2011-02-14 6 views
5

컨트롤러 작업에서 UrlReferrer에 대한 경로 값이 무엇인지 알아 내려고합니다.ASP.NET MVC URL에서 경로 값 가져 오기

MVC 파이프 라인의 어느 부분에서 들어오는 URL이 RouteValues로 변환되는지 알 수 없습니다. 달성하고자하는 것은 그에 가깝습니다.

답변

6

Request에 URL을 반환하는 HttpContextBase을 조롱 한 RouteTable.Routes.GetRouteData으로 전화해야합니다.

경로는 요청의 AppRelativeCurrentExecutionFilePath을 사용하여 내부적으로 일치됩니다. 그러나 HttpContextBase을 전달해야합니다.

요청 속성에 HttpRequestBase 인스턴스를 반환하는 HttpContextBase 클래스를 만들어야합니다.
HttpRequestBase 클래스는 경로 ~/으로 시작하여 AppRelativeCurrentExecutionFilePath 속성으로 경로를 반환해야합니다.

IRouteConstraint에 의해 사용되지 않는 한 다른 속성을 구현할 필요가 없습니다.

누군가 이미 작성했습니다 : Creating a RouteData instance from a URL

관련 문제