IIS 7.0 部署項目(mu)提(ti)示Server Error in '/IIS' Application
程序發布一切正常,用(yong)靜態頁也測試(shi)了,可以(yi)正常訪問(wen)。可等我登錄系統,訪問(wen)歡迎(ying)頁時,頁面打開如下圖

后來去查閱各種資料發現,在IIS7.0集成模式(shi)中(zhong),當我(wo)們在Global.asax的Application_Start中(zhong)使用HttpContext.Current屬性(xing)的(de)任何操作都(dou)是(shi)不可行的(de),It is not possible to access the request through the HttpContext.Current property in Application_Start in global.asax
根據中的第十六條,我們可以清楚(chu)看到Application_Start事件中已不能使用HttpContext.Current
對于這個(ge)問題,最直接(jie)的有兩個(ge)解決(jue)辦法:
1.更改應用(yong)(yong)程(cheng)序代碼,不(bu)使用(yong)(yong)HttpContext對象(推薦)
2.移動應用(yong)程序到經(jing)典模(mo)式(shi)。
對于官方提供的這(zhe)(zhe)兩種處理(li)方式,顯(xian)然我(wo)(wo)是(shi)(shi)我(wo)(wo)所期望(wang)的,我(wo)(wo)的做法是(shi)(shi)把獲取請(qing)求地(di)址這(zhe)(zhe)個(ge)地(di)方,改(gai)到配置文件中,由(you)人工去填(tian)寫請(qing)求地(di)址,這(zhe)(zhe)樣,我(wo)(wo)后面的邏輯代碼也(ye)不需(xu)要做太多改(gai)動。
如果你只(zhi)是為了獲取應用程序虛擬路(lu)徑, 可(ke)以將HttpContext.Current.Request.ApplicationPath 替(ti)換成(cheng)HttpRuntime.AppDomainAppVirtualPath來獲取,也可(ke)以達到期(qi)望效果。
在此做下(xia)記錄,便(bian)于自己也(ye)便(bian)于他(ta)人(ren)。