Tôi biết bài đăng này cũ nhưng tôi nghĩ điều này thật tuyệt.
Nếu bạn có một ý tưởng về cách tuyến đường của bạn được thiết lập bạn có thể làm:
Dim reffererPaths As String() = Request.UrlReferrer.Segments
tôi đã sử dụng nó để xác định xem tôi phải tải lại một bố cục hay không:
Function YourAction() As ActionResult
Dim refererPaths As String() = Request.UrlReferrer.Segments
Dim controller As String = RouteData.Values("controller").ToString()
If refererPaths(2).Replace("/", "") <> controller Then
Return View("YourAction", "SpecificLayout")
End If
Return View()
End Function
Đối tôi, refererPaths (2) luôn là bộ điều khiển của tôi. Nếu có một hành động được chỉ định sau bộ điều khiển, tôi chỉ cần xóa "/" khỏi phân đoạn và sau đó tôi so sánh bộ điều khiển liên kết giới thiệu với bộ điều khiển hiện tại.
http://stackoverflow.com/questions/7087663/getting-the-names-of-previous-action-and-controller-in-mvc- Bộ điều khiển – Maheep