gpt4 book ai didi

asp.net-mvc - 如何在 ASP.Net MVC - 5 应用程序中显示版本号并自动递增

转载 作者:行者123 更新时间:2023-12-02 19:14:25 26 4
gpt4 key购买 nike

我正在开发 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>
&copy; @DateTime.Now.Year
Version: @HttpContext.Current.Application["Version"]
</footer>

关于asp.net-mvc - 如何在 ASP.Net MVC - 5 应用程序中显示版本号并自动递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41701538/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com