申请中的请求对象

我们目前使用这一行代码来获取Application_Start事件中的当前应用程序url。

string sApplicationURL = HttpContext.Current.Request.Url.Scheme + "://" 
                         + HttpContext.Current.Request.Url.Authority 
                         + HttpContext.Current.Request.ApplicationPath;

我最近才发现,在IIS7.0中,Application_Start事件触发时,Request对象不再可用。

有没有另一种方式来获取当前的应用程序url而不使用Request对象?

谢谢


看看这个:http://mvolo.com/blogs/serverside/archive/2007/11/10/Integrated-mode-Request-is-not-available-in-this-context-in-Application_5F00_Start.aspx

总之,由于Application上下文不再可用于Application_Start事件,因此发生该错误。 这个博客指出了两个选择来处理这个错误:

1)将代码更改为无需申请,或2)修改应用程序以经典模式运行(不推荐)。

要获取ApplicationPath,请使用HttpRuntime.AppDomainAppVirtualPath


微软在所有重大更改(包括本文)上都有一个全面的文章,

http://learn.iis.net/page.aspx/381/aspnet-20-breaking-changes-on-iis-70/

是的,它的内容来自http://mvolo.com(原因很简单)。

链接地址: http://www.djcxy.com/p/67969.html

上一篇: Request object in Application

下一篇: Binded DataGridView to List<T> not showing data