- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发 ASP.Net MVC Web 应用程序。因此,我在本地主机中进行更改,然后运行它并测试它。发布我检查我的代码。 TEAMCITY 从主服务器构建项目并进行更改。我是初学者,所以我不知道这一切是如何发生的。另外,我的经理希望我在网站页脚
上显示版本号。所以,我查看了这个链接Add Version Number并进行了以下更改。
cshtml 文件
var version = @ViewContext.Controller.GetType().Assembly.GetName().Version;
<p>Version @version</p>
//and in AssemblyInfo.cs file I added
[assembly: AssemblyVersion("10.999.7.9")]
[assembly: AssemblyFileVersion("10.999.999.999")]
现在在我的本地主机中我看到的只是 10.999.7.9
然后我发现一个链接说我需要使用“*”来自动增加版本号。此链接Increment the Version Number
但现在我的经理告诉我恢复 AssemblyInfo.cs 文件中的所有更改并将其保留为原始内容
[assembly: AssemblyVersion("10.999.999.999")]
[assembly: AssemblyFileVersion("10.999.999.999")]
我正在 checkin 的最终更改
[assembly: AssemblyVersion("10.999.999.999")] // BY DEFAULT
[assembly: AssemblyFileVersion("10.999.999.999")] // BY DEFAULT
并保持 cshtml 文件的更改不变
cshtml
var version = @ViewContext.Controller.GetType().Assembly.GetName().Version;
<p>Version @version</p>
是这样吗?显然,team city 将覆盖 AssemblyInfo.cs 信息并更新版本号。我在这里完全困惑了。我的意思是我不需要使用 *
自动递增版本号。另外,团队城市如何覆盖 assembly.cs 文件,以便下面的代码具有正确的版本号。
var version = @ViewContext.Controller.GetType().Assembly.GetName().Version;
我是否遗漏了什么,或者我的经理遗漏了一些细节,他错了。为了获得正确的版本号和自动增量,我是否也需要在 Assembly.cs 文件中进行更改并 checkin assemblyInfo.cs 文件?请指导我。
最佳答案
您想要在 TeamCity 中设置一个名为“程序集修补”的构建功能。
这是相关的 link
TeamCity 将在构建过程中替换程序集版本,并在构建完成后恢复它,但编译后的版本将是 TeamCity 所说的版本。
然后在我的 Global.asax 中,我在 Application_Start 中找到了这段代码
Version version = Assembly.GetExecutingAssembly().GetName().Version;
Application["Version"] = String.Format("{0}.{1}", version.Major, version.Minor);
然后在我的 _Layout.cshtml 中我有
<footer>
© @DateTime.Now.Year
Version: @HttpContext.Current.Application["Version"]
</footer>
关于asp.net-mvc - 如何在 ASP.Net MVC - 5 应用程序中显示版本号并自动递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41701538/
我是一名优秀的程序员,十分优秀!