• 注册
当前位置:1313e > 默认分类 >正文

如何在ASP.NET程序中显示程序集版本号

于很多有趣的原因,ASP.NET程序中虽然可以往App_code目录中追加AssemblyInfo.cs文件,但位于该文件中的版本号总是无法正确的显示在用户面前。

如果你通过下面的语句企图像其他.NET应用程序一样获取Assembly中的版本号的话,你将永远得到一个0.0.0.0的字符串。

System.Reflection.Assembly.GetAssembly(this.GetTyp e()).GetName().Version.ToString();

 

 

很多人能说出一堆理由来告诉我企图在ASP.NET程序中获取程序集版本号是多么愚蠢的一件事,我对此也非常的理解,并表示认同,但如果得到变态的要求的话我们还是需要动手来实现这件事情的。

首先在App_Code文件下下增加一个AssemblyInfo.cs文件,文件的内容模板可以从其他.NET应用程序中复制。

其次,在Global.asax文件的Application_Start段落中增加如下代码:

ExpandedBlockStart.gifGlobal.asax
    void Application_Start(object sender, EventArgs e)
    {
        
// ...

        
// Load Assembly
        Application.Add("Assembly", System.Reflection.Assembly.Load("App_Code/AssemblyInfo.cs"));

        
// ...
    }

简单来说就是直接指定Assembly文件,然后直接放到Application的缓存中。

最后就是在代码中获取版本号,既然知道是怎么存进去的,取出来就简单了:

VersionNumber.Text = ((System.Reflection.Assembly)Application["Assembly"]).GetName().Version.ToString();


转载于:https://www.cnblogs.com/nnkook/archive/2010/03/10/1682899.html

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 162202241@qq.com 举报,一经查实,本站将立刻删除。

最新评论

欢迎您发表评论:

请登录之后再进行评论

登录