asp.net-core - 在 ASP.NET CORE 1.1 中发布时未复制 AppSettings.*.json 文件

标签 asp.net-core visual-studio-2017 asp.net-core-1.1

我正在发布一个 ASP.NET Core 1.1 项目 .csproj 文件 ...

当我发布它时,项目被编译并复制了所有文件,包括 wwwroot 中的文件,但所有 appsettings.*.json 文件都丢失了。

我不知道为什么,因为我有以下几点:

<Content Include="**\*.json" />

我错过了什么?这是完整的 .csproj 文件。
<Project>

  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" />

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp1.1</TargetFramework>
    <PreserveCompilationContext>true</PreserveCompilationContext>
    <PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8+wp8+wpa81;</PackageTargetFallback>      
  </PropertyGroup>

  <ItemGroup>
    <Compile Include="**\*.cs" />   
    <Content Include="**\*.json" />
    <EmbeddedResource Include="**\*.resx" />        
  </ItemGroup>

 <ItemGroup>
    <PackageReference Include="System.Runtime" Version="4.3.0" />
    <PackageReference Include="Microsoft.NETCore.App" Version="1.1.0" />
    <PackageReference Include="Microsoft.NET.Sdk.Web" Version="1.0.0-alpha-20161104-2-112">
      <PrivateAssets>All</PrivateAssets>
    </PackageReference>
    <PackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.Diagnostics" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.Identity" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.Razor.Tools" Version="1.1.0-preview4-final" />  
    <PackageReference Include="Microsoft.AspNetCore.ResponseCaching" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.ResponseCompression" Version="1.0.0" />
    <PackageReference Include="Microsoft.AspNetCore.Rewrite" Version="1.0.0" />
    <PackageReference Include="Microsoft.AspNetCore.Routing" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.Server.IISIntegration" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.Server.Kestrel" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.0" />
    <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="1.1.0" />
    <PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="1.1.0" />
    <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="1.1.0" />
    <PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="1.1.0" />
    <PackageReference Include="Microsoft.Extensions.Logging" Version="1.1.0" />
    <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.0" />
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.0" />
  </ItemGroup>

  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="1.0.0-msbuild1-final" /> 
  </ItemGroup>  

  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

  <Target Name="Prepublish" BeforeTargets="PrepareForPublish" Condition=" '$(IsCrossTargetingBuild)' != 'true' ">
    <Exec Command="npm install" />
    <Exec Command="bower install" /> 
    <Exec Command="gulp build" />
  </Target>   

</Project>

最佳答案

我在用作 angular-translate 的翻译文件的四个 json 文件中遇到了类似的问题。我所做的包括将它们明确标记为内容。

<Content Include="Language\locale-en.json" />
<Content Include="Language\locale-fr.json" />
<Content Include="Language\locale-es.json" />
<Content Include="Language\locale-pt.json" />

关于asp.net-core - 在 ASP.NET CORE 1.1 中发布时未复制 AppSettings.*.json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41193096/

相关文章:

unit-testing - 如何在Visual Studio 2017中禁用测试发现?

sql - SSRS 2016 使用 rs.exe 自动部署到 SQL Server 2008R2

c# - 找不到 ASP.NET 5.0 中的 HttpClient?

visual-studio-2015 - 为什么 ASP.NET Core 解决方案在迁移到 Visual Studio 2017 后会下降?

c - 如何包含必要的 kernel32.lib、 header - 或在自定义应用程序中使用标准 dll?

asp.net - 使用连接服务访问 ASP.NET Core 应用程序中的 Azure 存储

asp.net-core-mvc - ASP.NET Core v1.1 中的 IdentityServer 和简单注入(inject)器集成

html - 在 asp.core razor 页面中设置所选项目

c# - 从.net core 2.1中的单例服务注入(inject)作用域服务