Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何将最新的TFS变更集编号插入aspx页面?_Asp.net_Asp.net Mvc_Msbuild_Tfsbuild - Fatal编程技术网

Asp.net 如何将最新的TFS变更集编号插入aspx页面?

Asp.net 如何将最新的TFS变更集编号插入aspx页面?,asp.net,asp.net-mvc,msbuild,tfsbuild,Asp.net,Asp.net Mvc,Msbuild,Tfsbuild,当我们使用SVN时,我们总是在页面的页脚处打印:“修订版XXXX”。我一直在寻找,但我不知道如何对TFS做同样的事情。有人能提供一些建议吗 如果这很重要:我们正在使用ASP.NETMVC。不过,我猜这并不重要。至少在发布时,TFS不允许在文件中替换符号,我想这正是您想要的。我不确定在较新的版本中这是否发生了变化。变更集!=版本 也就是说,您可以在web.config中添加保存版本号的设置,并将其显示在页面上。版本号可以作为构建过程的一部分进行更新,但它不会与变更集相关联 我或许应该补充一点,这可

当我们使用SVN时,我们总是在页面的页脚处打印:“修订版XXXX”。我一直在寻找,但我不知道如何对TFS做同样的事情。有人能提供一些建议吗


如果这很重要:我们正在使用ASP.NETMVC。不过,我猜这并不重要。

至少在发布时,TFS不允许在文件中替换符号,我想这正是您想要的。我不确定在较新的版本中这是否发生了变化。

变更集!=版本

也就是说,您可以在web.config中添加保存版本号的设置,并将其显示在页面上。版本号可以作为构建过程的一部分进行更新,但它不会与变更集相关联


我或许应该补充一点,这可能会成为一个循环问题。如果您获得项目的最新变更集编号,然后将其添加到配置中(如上所述),然后签入,您将不再显示最新的变更集。向最新变更集中添加1也不能保证,因为在更新文件时可以签入某些内容

您可以在
AssemblyInfo.cs
中使用程序集版本控制工具/技术更新项目的版本号,如。可以基于TFS变更集编号更新程序集的版本号。然后,可以在应用程序中显示版本号。

我们最终使用了一个MsBuild任务,该任务搜索特定字符串并替换为适当的值(不一定是修订号)


该任务作为构建模板的一部分运行,并将修订号放入所有存在标记的文件中。

您可以使用默认版本系统来跟踪程序集修订号,而无需在TFS中添加任何内容

如果在
AssemblyInfo
AssemblyVersion
属性中使用
Major.Minor.*
格式(例如
[assembly:AssemblyVersion(“1.0.*”)]
),它将根据以下格式生成版本:

Major.Minor.Build.Revision
在哪里

  • 少校=你的价值观
  • 小调=你的价值
  • Build=自发布以来的天数 2000/01/01
  • 修订=(自当天午夜起的秒数 在内部版本中指定)/2
这将为您提供一个不断增加的数字,为您提供关于构建日期和时间的精确信息


要在代码中使用这些值,只需使用
Assembly.getExecutionGassembly().GetName().version

@K.R.R如何显示数字,它是硬编码到每页中还是从另一个地方提取?