如何在ASP.NET Core*享程序集信息?
问题描述:
我正在开发一个使用ASP.NET Core的REST API。我曾经使用包含常见属性(如AssemblyCompany,AssemblyCopyright,AssemblyTrademark和AssemblyVersion)的共享文件在我的解决方案*享程序集信息。通过这种方式,解决方案中的所有项目都将使用相同的组件信息属性进行编译。如何在ASP.NET Core*享程序集信息?
在ASP.NET Core中,现在在project.json文件中定义了这些属性。有没有办法以类似的方式分享这些属性?
答
除AssemblyVersion之外,您提到的程序集属性仍然可以在共享文件中定义。该文件可以添加到项目“buildOptions”下。
实施例:
{
"buildOptions": {
"compile": "../shared/AssemblyInfo.cs"
}
}
详情请参阅https://docs.microsoft.com/en-us/dotnet/articles/core/tools/project-json#buildoptions。
AssemblyVersion无法共享,因为它总是从"version"
值project.json中生成。如果未指定,则"version"
默认为1.0.0。
如果其相应的字段在project.json中留空,则不会生成其他属性,例如AssemblyCopyright。
VS2017失败后,新的基于msbuild的项目类型没有使用project.json并且添加一个链接的文件,因为我们一直能够做到,因为AssemblyInfo文件是在编译时使用meta生成的项目中提供的数据。 – Daniel
签出这个答案在csproj中的装配信息的一些细节。 http://*.com/a/42183749/2526265 – natemcmaster