C# 带有Docker的Asp.Net内核-重复';内容';项目包括在内

C# 带有Docker的Asp.Net内核-重复';内容';项目包括在内,c#,asp.net,.net,docker,asp.net-core,C#,Asp.net,.net,Docker,Asp.net Core,我想用docker部署我的应用程序时遇到问题。 我正在与docker一起使用ASP.NETCore 这是一条错误消息: /usr/local/share/dotnet/sdk/1.0.4/Sdks/Microsoft.NET.sdk/build/Microsoft.NET.sdk.DefaultItems.targets(188,5): 错误:包含重复的“内容”项。NET SDK包括 默认情况下,项目目录中的“内容”项。你也可以 从项目文件中删除这些项,或设置 如果希望,请将“EnableDef

我想用docker部署我的应用程序时遇到问题。 我正在与docker一起使用ASP.NETCore

这是一条错误消息:

/usr/local/share/dotnet/sdk/1.0.4/Sdks/Microsoft.NET.sdk/build/Microsoft.NET.sdk.DefaultItems.targets(188,5): 错误:包含重复的“内容”项。NET SDK包括 默认情况下,项目目录中的“内容”项。你也可以 从项目文件中删除这些项,或设置 如果希望,请将“EnableDefaultContentItems”属性设置为“false” 在项目文件中显式地包含它们。欲了解更多信息, 看见重复的项目是: 'wwwroot/_version.txt' [/Users/xxxxxx/Projects/api test/TestApi/TestApi.csproj]

这是我的csproj

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp1.1.1</TargetFramework>
    <DockerComposeProjectPath>..\docker-compose.dcproj</DockerComposeProjectPath>
    <UserSecretsId>0a7aa24d-009c-4d0b-b0fd-e8be397b0784</UserSecretsId>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="AutoMapper" Version="6.0.2" />
    <PackageReference Include="CoreCompat.System.Drawing" Version="1.0.0-beta006" />
    <PackageReference Include="Google.Cloud.Storage.V1" Version="1.1.0-beta01" />
    <PackageReference Include="HtmlAgilityPack.NetCore" Version="1.5.0.1" />
    <PackageReference Include="MailKit" Version="1.16.1" />
    <PackageReference Include="Microsoft.AspNetCore" Version="1.1.2" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.3" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Formatters.Xml" Version="1.1.3" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Versioning" Version="1.1.0-beta2" />
    <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.2" />
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="1.1.2" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.2" />
    <PackageReference Include="MySql.Data.EntityFrameworkCore" Version="7.0.7-m61" />
    <PackageReference Include="RazorLight" Version="1.1.0" />
    <PackageReference Include="RazorLight.MVC" Version="1.0.4" />
    <PackageReference Include="Serilog" Version="2.5.0-dev-00817" />
    <PackageReference Include="Serilog.Extensions.Logging" Version="1.4.1-dev-10155" />
    <PackageReference Include="Serilog.Extensions.Logging.File" Version="1.0.1" />
    <PackageReference Include="Serilog.Sinks.Console" Version="2.2.0-dev-00721" />
    <PackageReference Include="Swashbuckle.AspNetCore" Version="1.0.0" />
    <PackageReference Include="Swashbuckle.AspNetCore.Swagger" Version="1.0.0" />
    <PackageReference Include="Swashbuckle.AspNetCore.SwaggerGen" Version="1.0.0" />
    <PackageReference Include="Swashbuckle.AspNetCore.SwaggerUI" Version="1.0.0" />
    <PackageReference Include="WkWrap.Core" Version="1.0.2" />
    <PackageReference Include="ZXing.Net" Version="0.15.0" />
  </ItemGroup>
  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.0" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="SQL\" />
    <Content Include="wwwroot\_version.txt">
      <CopyToOutputDirectory>Never</CopyToOutputDirectory>
    </Content>
  </ItemGroup>
</Project>

netcoreapp1.1.1
..\docker-compose.dcproj
0a7aa24d-009c-4d0b-b0fd-e8be397b0784
从未
我认为问题在于服务器上当前有一个_version.txt文件(我不能这么说,因为我没有访问权限),它试图复制它


您介意帮我一下吗?

默认情况下,.NET SDK包含项目目录中的
内容
项,因此
wwwroot\\u version.txt
已存在于项目中。然后,您的项目文件试图再次添加它,这会导致错误

可以使用
Update
而不是
Include
来更新现有内容项,而不是将其包含两次

所以,你只需要改变

<Content Include="wwwroot\_version.txt">
  <CopyToOutputDirectory>Never</CopyToOutputDirectory>
</Content>

从未


从未
似乎是重复的
<Content Update="wwwroot\_version.txt">
  <CopyToOutputDirectory>Never</CopyToOutputDirectory>
</Content>