如何根据tfs项目的构建号设置AssemblyInfo.cs
本文关键字:设置 AssemblyInfo cs 构建 何根 tfs 项目 | 更新日期: 2023-09-27 18:06:09
该项目托管在tfs服务器上,我需要访问构建号,我认为这是在构建项目时自动生成的。
我需要检索构建号并在网页上显示它,以便qa和测试人员确切地知道他们正在工作的构建。
我发现如何在以下链接中创建自定义构建号:http://msdn.microsoft.com/en-us/library/aa395241 (v = vs.100) . aspx
,但它不能解决我的问题,因为我没有访问构建定义文件。
我正在寻找某种部署后的任务,可以访问构建号或可能生成一个,并可能把它写下来到一个文件,从那里我可以读到它。我不知道这是否有意义,因为这是我第一次使用。net
你可以这样做:
Assembly assembly = Assembly.GetExecutingAssembly();
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(assembly.Location);
string version = fvi.FileVersion;
或者如果您有多个程序集,那么您可以使用
Assembly.GetAssembly(typeof(SomeObject))
,其中SomeObject
在程序集中声明,您希望获得的版本。
这就是我最终实现它的方式感谢John和mclaassen。
在我的AssemblyInfo.cs中,我做了以下更改:
:
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
:后
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("1.0.*")]
然后我写了一个助手类,它可以使用get方法访问AssemblyVersion号。
public string GetVersion()
{
string version ;
version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
return version;
}
所以当我调用这个方法时它会给我一个字符串它就是我的版本号
TFS Versioning是一个很好的扩展!
您最好使用TFS Community构建工具中的TFS Version活动。该工具会自动从构建名称中获取版本号,并且可以很容易地配置为更新AssemblyInfo。*文件在get之后,编译之前。
- <
- https://tfsbuildextensions.codeplex.com/wikipage?title=How%20to%20integrate%20the%20TfsVersion%20build%20activity& referringTitle =文档/gh>
在所有的工具中,这是支持最好的一个。我觉得其他的都太复杂了。我已经在许多客户的数百个构建中使用了这个