在ASP.NET MVC 中擷取當前URL、controller、action

來源:互聯網
上載者:User

標籤:http   io   ar   os   sp   strong   檔案   on   art   

一、URL的擷取很簡單,ASP.NET通用: 
【1】擷取 完整url (協議名+網域名稱+虛擬目錄名+檔案名稱+參數) 

string url=Request.Url.ToString(); 
【2】擷取 虛擬目錄名+頁面名+參數: 

string url=Request.RawUrl;
(或 string url=Request.Url.PathAndQuery;)

【3】擷取 虛擬目錄名+頁面名:
string url=HttpContext.Current.Request.Url.AbsolutePath;
(或 string url= HttpContext.Current.Request.Path;) 

【4】擷取 網域名稱:
string url=HttpContext.Current.Request.Url.Host; 

【5】擷取 參數: 
string url= HttpContext.Current.Request.Url.Query; 

【6】擷取 連接埠:
Request.Url.Port 

二、當前controller、action的擷取 
RouteData.Route.GetRouteData(this.HttpContext).Values["controller"] 
RouteData.Route.GetRouteData(this.HttpContext).Values["action"] 
 
RouteData.Values["controller"] 
RouteData.Values["action"] 
如果在視圖中可以用 
ViewContext.RouteData.Route.GetRouteData(this.Context).Values["controller"] 
ViewContext.RouteData.Route.GetRouteData(this.Context).Values["action"] 
 
ViewContext.RouteData.Values["controller"] 
ViewContext.RouteData.Values["action"]

 

原文 

在ASP.NET MVC 中擷取當前URL、controller、action

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.