c# - 为什么 IDE(Rider 和 Visual Studio)不根据官方文档增加 '*' 字符的程序集版本?我该如何解决?
问题描述
视窗 10 x64。Visual Studio 2019 v16.6.1。骑士 2020.1.3。
微软官方文档:
您可以指定所有值,也可以使用星号 (*) 接受默认内部版本号、修订号或两者。例如,
[assembly:AssemblyVersion("2.3.25.1")]
表示 2 为主要版本,3 为次要版本,25 为内部版本号,1 为修订号。版本号,例如[assembly:AssemblyVersion("1.2.*")]
指定 1 作为主要版本,2 作为次要版本,并接受默认的构建和修订号。版本号,例如[assembly:AssemblyVersion("1.2.15.*")]
指定 1 作为主要版本,2 作为次要版本,15 作为内部版本号,并接受默认修订号。默认内部版本号每天递增。默认修订号是自当地时间午夜以来的秒数(不考虑夏令时的时区调整)除以 2。
我在AssemblyInfo.cs
文件中编辑了版本信息:
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("1.0.*")]
但是,如果我通过 Rider IDE 重建我的项目并检查程序集版本,我会看到意外的结果:
如果我尝试在 Visual Studio 2019 v16.6.1 中执行相同操作,那么我什至会收到编译错误:
如果我按照此建议Deterministic
进行设置,则不会发生编译错误,但我会得到相同的结果:false
为什么会这样?我该如何解决?
解决方案
推荐阅读
- python - 在 Python 中进行 Lexing 之后,如何用我自己的语言创建代码块?
- swift - SwiftUI - 没有使用 HTTP 基本身份验证的自动填充凭据
- java - Google 搜索无法识别符号
- java - 这个涉及递归和数组的 java 代码是如何工作的?
- java - 使用 Spring 和 Redis 的 Shedlock
- python - 如何使用 Selenium 从 Firefox 中删除消息浏览器处于远程控制之下
- php - 未创建 Cookie
- unity3d - Unity 2020.2 Alpha 不支持地形工具?
- python - 多索引json到数据框
- bpf - 如何在 bpftracing 脚本中使用结构