저는 MVC와 사랑에 빠져 있습니다. Application_Start 이벤트에서 메뉴를로드하려고합니다. 올바른 URL (controllerName/actionName)을 사용하여 링크를로드하려고하지만 Url.Action 또는 다른 방법을 사용하여 경로를 빌드 할 수 없습니다.ASP.NET MVC : Application_Start and Url.Action
아무도 도와 줄 수 있습니까?
저는 MVC와 사랑에 빠져 있습니다. Application_Start 이벤트에서 메뉴를로드하려고합니다. 올바른 URL (controllerName/actionName)을 사용하여 링크를로드하려고하지만 Url.Action 또는 다른 방법을 사용하여 경로를 빌드 할 수 없습니다.ASP.NET MVC : Application_Start and Url.Action
아무도 도와 줄 수 있습니까?
왜 application_start에서 메뉴를 빌드 하시겠습니까? 어떤 종류의 캐싱을위한 것입니까? 어쨌든 간다 ..
RegisterRoutes(RouteTable.Routes);
var httpContext = new HttpContextWrapper(HttpContext.Current);
UrlHelper urlHelper = new UrlHelper(new RequestContext(httpContext, new RouteData()));
var urlToHome = urlHelper.RouteUrl("Home");
은 차라리 그런 캐시 행동, 또는 무언가를 가리키는 것을 당신의 masterpage에 RenderAction을하고 추천 할 것입니다.
protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
var context = new HttpContextWrapper(HttpContext.Current);
var routeData = RouteTable.Routes.GetRouteData(context) ?? new RouteData();
var requestContext = new RequestContext(context, routeData);
var urlHelper = new UrlHelper(requestContext);
var url = urlHelper.Action("Home", "Index");
// TODO: do something with the url
}
참고 : 통합 모드에서는 실패합니다. http://blogs.iis.net/mvolo/archive/2007/11/10/Request-is-not-available-in-this-context-exception-in-Application_5F00_Start. aspx –
예, 캐싱을하고 싶습니다. 감사. 그것은 작동합니다. – LeftyX
작동하는 경우 수락 된 답변으로 표시하십시오. 그 stackoverflow 작동 방식! :) –
참고 : 통합 모드에서는 실패합니다. http://blogs.iis.net/mvolo/archive/2007/11/10/Request-is-not-available-in-this-context-exception-in-Application_5F00_Start. aspx –