2015-01-21 84 views
1

在我的自定義操作過濾器中,我將如何獲取頁面URL。在自定義屬性中獲取頁面URL的最佳方式是什麼?

例如,如果我的網址是:

mysite.com/Myfolder/MyArea/MyController/MyAction 

我想有一個返回功能:

/MyArea/MyController/MyAction 

MyFolder文件是在我的網站上託管虛擬目錄。

+0

通過 '自定義屬性' 你的意思是你的自定義操作-過濾? – haim770 2015-01-21 11:00:09

+0

這是如何mvc路線工作mysite.com/Myfolder/MyArea/MyController/MyAction我認爲默認路由就像控制器/行動/ {paramifany} – qamar 2015-01-21 11:00:45

+0

@ haim770 ...是它的自定義行爲過濾器..我已編輯的行動。 – 2015-01-21 11:03:13

回答

2

試試這個:

string relativeAppUrl = VirtualPathUtility.ToAppRelative(filterContext.HttpContext.Request.Url.AbsolutePath); 

如果你需要刪除前導~(波浪號):

string relativeAppUrl = VirtualPathUtility.ToAppRelative(filterContext.HttpContext.Request.Url.AbsolutePath).Trim('~'); 

MSDN

+0

它的工作本地主機..我將在服務器上測試它,然後我會接受這個答案......感謝您的幫助.. !!! – 2015-01-21 11:36:33

+0

謝謝..做得像一個魅力..感謝... !!!!! – 2015-01-22 12:23:22

相關問題