之間的不同,我用這樣的方法,以獲得我的應用程序的URL路徑返回路徑:是本地和實時服務器
string strPathAndQuery = HttpContext.Request.Url.PathAndQuery;
string strUrl = HttpContext.Request.Url.AbsoluteUri.Replace(strPathAndQuery, "/");
這應該路徑當前的URL。
問題是,我的實時服務器將應用程序作爲IIS服務器內的應用程序(文件夾)運行。所以測試時,我得到這樣一個URL:
http://localhost/Survey/Create
而活着,我得到:
http://testurl.com/Survey/Create
當什麼,我需要的直播服務器是:
http://testurl.com/SurveyApp/Survey/Create
隨着SurveyApp作爲將應用程序存儲在IIS中的文件夾。有沒有一種方法可以獲取控制器所在的URL,無論物理位置如何?
我正在使用郵件組件發送排隊的電子郵件,並且需要包含指向特定控制器和操作的鏈接。由於它是郵件組件的主體消息,我不認爲我可以使用Razor語法。 – user547794 2012-07-30 17:00:54
@ user547794 - 我提到的方法與Razor無關,除了可以從Razor調用它們。但是,您必須稍微按摩它們以獲取絕對路徑(這些方法僅提供相對URL) – 2012-07-30 17:05:11