2013-11-14 40 views
2

當我們的ASP.NET MVC 4點應用程序啓動,我們需要設置一個log4net的Appender的這取決於網站是什麼性質。獲得在Global.asax中的服務器在ASP.NET MVC 4

有沒有辦法讓「http://www.site.com」部分網站初始加載一段時間,也許在Global.asax中?

概述: 如果服務器www.site2.com然後設置Appender.SomeValue = 「555」 如果該服務器是www.site.com然後設置Appender.SomeValue = 「123」

由於許多網站將指向相同的代碼庫,我們不知道我們需要Appender.SomeValue設置,直到它運行。

+0

護理解釋得你'試圖做什麼?可能有不同的方式來配置log4net,給你相同的結果。 – acfrancis

回答

0

預申請開始較爲有限。爲了安全起見我把代碼中的global.asax.cs定義一個新的靜態方法,它是通過Application_Start方法中在這一點上獲得HttpContext.Current.request.Url叫應該是安全的

1

我想在Global.asax中的方法將運行,只響應請求。並且幾乎在ASP.NET內部的任何地方,您都可以訪問HttpContext.Current.Request.Url

另外還有一種方法在Application_Start之前運行,這是一種用PreApplicationStartMethodAttribute屬性裝飾的方法。

一種方法是使用WMI(Windows管理規範),以獲得訪問當前網站,它的綁定,因此該網站的地址。因爲它的應用程序啓動之前運行,多用於初始化迪容器

相關問題