当前位置:  开发笔记 > 编程语言 > 正文

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

如何解决《如何在ASP.NetMVC中显示版本号并自动递增版本号-5应用程序》经验,为你挑选了1个好方法。

我正在使用ASP.Net MVC Web应用程序。因此,我在localhost中进行了更改,然后运行并对其进行测试。我签入代码的帖子。TEAMCITY从主服务器构建项目,并进行更改。我是一个初学者,所以我不知道这一切是怎么发生的。另外,我的经理要我在上显示版本号website footer。因此,我查看了此链接“ 添加版本号”,并进行了以下更改。

cshtml文件

     var version = @ViewContext.Controller.GetType().Assembly.GetName().Version;
     

Version @version

//and in AssemblyInfo.cs file I added [assembly: AssemblyVersion("10.999.7.9")] [assembly: AssemblyFileVersion("10.999.999.999")]

现在在我的本地主机中,我看到的只是10.999.7.9

然后,我找到一个链接,该链接说我需要使用“ *”来自动递增版本号。此链接增加版本号

但是现在我的经理告诉我要还原AssemblyInfo.cs文件中的所有更改,并将其保留为原始

[assembly: AssemblyVersion("10.999.999.999")]

[assembly: AssemblyFileVersion("10.999.999.999")]

我正在签到的最终更改

[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;
         

Version @version

就是这样吗?显然,team city将覆盖AssemblyInfo.cs信息并更新版本号。我在这里完全感到困惑。我的意思是不需要使用*自动增加版本号。另外,团队城市如何覆盖assembly.cs文件,以便以下代码具有正确的版本号。

var version = @ViewContext.Controller.GetType().Assembly.GetName().Version;

我错过了什么吗?或者我的经理错过了一些细节,他错了。而要获得正确的版本号并自动递增,我是否也需要在Assembly.cs文件中进行更改并也要在AssemblyInfo.cs文件中签入?请指导我。



1> Fran..:

您想在TeamCity中设置一个称为Assembly Patching的构建功能。

这是一个相关的链接

TeamCity将在构建过程中替换程序集版本,并在构建完成后将其还原,但是编译后的版本将与TeamCity所说的一样。

然后在我的Global.asax中,在Application_Start中获得此代码

        Version version = Assembly.GetExecutingAssembly().GetName().Version;
        Application["Version"] = String.Format("{0}.{1}", version.Major, version.Minor);

然后在我的_Layout.cshtml中,

        
© @DateTime.Now.Year Version: @HttpContext.Current.Application["Version"]

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有