VS 2022 .NET 6类库程序集版本选项缺失,如何正确设置版本?
.NET 6类库同时设置程序集版本与NuGet包版本的方法
.NET 6+采用SDK-style项目结构,版本配置不再像.NET Framework那样在属性页单独设置程序集版本,而是统一通过项目文件或Package选项卡关联配置:
方法一:通过Visual Studio界面设置
右键项目→属性→Package选项卡,设置Package Version:
- 默认情况下,这个版本号会同时作为NuGet包的版本,以及生成DLL的程序集版本(
AssemblyVersion)和文件版本(FileVersion),无需额外配置就能同时满足类库和NuGet包的版本需求。 - 若需要单独控制程序集版本和NuGet包版本,需手动编辑项目文件。
方法二:直接编辑.csproj文件(更灵活)
打开项目的.csproj文件,添加或修改以下节点:
统一控制版本(推荐):
<Version>1.0.0</Version>这个值会同时作为NuGet包版本,以及DLL的
AssemblyVersion和FileVersion(未单独指定时)。分开控制版本:
如果需要让程序集版本和NuGet包版本不同,可以单独指定:<!-- NuGet包版本 --> <Version>1.0.0</Version> <!-- DLL程序集版本 --> <AssemblyVersion>1.0.0.0</AssemblyVersion> <!-- DLL文件版本 --> <FileVersion>1.0.0.0</FileVersion>也可以通过变量关联,保持版本同步的同时微调格式:
<Version>1.0.0</Version> <AssemblyVersion>$(Version).0</AssemblyVersion> <FileVersion>$(Version).0</FileVersion>
保存项目文件后,重新生成即可让DLL包含指定的程序集版本,同时NuGet包使用设置的版本号。
内容的提问来源于stack exchange,提问作者Computer
相关产品推荐
相关产品推荐

