F#程序集中的默认程序集版本号始终为0
如果我指定我想要默认的构建版本和修订版本号,我就放
[<assembly: AssemblyVersion("0.0.*")>]
在AssemblyInfo.fs中(我基于https://blogs.msdn.com/b/mcsuksoldev/archive/2011/06/01/f-assembly-information-file-template.aspx上的示例)。
出于某种原因,我总是以F#DLL中的版本号0(例如0.0.4967.0
)作为结果,而它在C#中的广告(例如0.0.4967.21937
)。
默认版本号只有在版本号不是通配符时才有效, 0.0.1.*
。
这是一个错误还是我错过了什么?
这是一个错误。 它的工作原理与VS 2010(F#2.0,为其撰写博客)相同,但在VS 2012(F#3.0)和VS 2013(F#3.1,仍然预发布)中被打破。 您应该向fsbugs@microsoft.com发送错误报告。
F#2.0的代码在这里是il.fs的底部。 寻找parseILVersion
。
3.0的相应代码在这里。
该错误是在新的条件 - 他们检查versionComponents.Length < 4
,应该可能检查version.Revision < 0
。
上一篇: Default assembly revision number always 0 in F# assemblies