如何在ASP.NET程序中显示程序集版本号
2010-03-10 21:14
369 查看
于很多有趣的原因,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段落中增加如下代码:
Global.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();
如果你通过下面的语句企图像其他.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段落中增加如下代码:
Global.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();
相关文章推荐
- 如何在ASP.NET程序中显示程序集版本号
- Asp.Net 显示程序集版本号
- ASP.NET程序如何防止被注入(整站通用)
- 如何在ASP.NET程序中弹出新窗口并得到返回值
- Barcode Professional for ASP.NET使用教程:如何在HTML支持的DPI范围内显示高清条码
- 如何让Gridview在没有数据的时候显示表头(asp.net)
- 如何在子目录中很好的运行asp.net程序?
- 如何在ASP.NET大型应用系统的模块化开发实现多版本程序集并存支持[转载]
- ASP.NET AJAX控件Tabpanel如何折行显示?
- ASP程序中调用Now()总显示“上午”和“下午”,如何解决?
- 自定义HTTP处理程序显示图片(asp.net 2.0)
- 如何在Spread ASP.NET中显示数据库的数据关系?
- 如何在asp.net中将office文档文件(doc,excel,ppt,txt等)转成FLASH可以显示的swf格式
- IIS网站或系统验证码不显示问题——"使用了托管的处理程序,但是未安装或未完整安装 ASP.NET"
- Win2003里面ASP.net 程序如何访问UNC路径呢?
- 如何在ASP.NET程序里面执行DOS命令
- 如何将.net程序打包成ActiveX控件,并在ASP.NET中调用?
- 记录---IIS显示asp.net程序的具体错误
- ASP.NET程序在不同的机子上,不显示中文名图片
- asp.net 实现进度条 用来显示加载进度或程序处理进度