GetAssemblyIdentity任务似乎只返回AssemblyVersion,而不是AssemblyInformationalVersion。
我可以按照Reading AssemblyInformationalVersion value from AssemblyInfo file with RegEx的建议解析AssemblyInfo.cs,但我不认为这是最佳解决方案。
答案 0 :(得分:1)
如果您想从实际的汇编二进制文件中读取AssemblyInformationVersion
值,那么您的问题(正如当前编写的那样)表明情况就是这样(暗示GetAssemblyIdentity
- 任务)。
如果是这样,请使用FileVersionInfo.GetVersionInfo
并阅读ProductVersion
属性。要从MSBuild内部调用它,您可能需要一个小的自定义任务,这样做。
在内部,这就是C#编译器turns the AssemblyInformationalVersion
into。
如果,您需要解析源代码(例如AssemblyInfo.cs
)的值(这是一个完全不同的东西!),并且您链接到的正则表达式方法不够用于您的目的,将不得不求助于使用Roslyn或其他一些实际理解C#的技术,并且可以正确地解析源代码。