사람들이 등록 할 수있는 사이트가 ~/pageSlug에 호스트하려는 사이트에서 자신의 페이지를 제공 할 수있는 영역이 있습니다. Global.asax에서 규칙을 적용하려고 시도했지만 ~/컨트롤러이 색인 작업에 직접 매핑 할 수있는 기본적인 기본 경로를 위반했습니다. userSlug 앞에 구분 기호를 넣을 수 없으므로 ~/p/pageSlug은 실제로 옵션이 아닙니다.어떻게 동적으로 ASP.NET MVC RouteTable에 추가 할 수 있습니까?
경로에 사용자 페이지를 추가하는 측면에서 App_Start의 페이지를 순환하여 RoutesTable에 명시 적으로 추가하고 있습니다. 이것은 정상적으로 작동하고 있으며, AppPool을 하루에 한 번 작업 할 수있을 정도로 길게 설정했습니다. 이렇게하면 사용자를 위해 24 시간 동안 '페이지를 실시간으로 처리'할 수있는 전환점을 남겨 둡니다.이를 해결하기 위해 노력하고 있습니다.
이상적으로, 사용자가 등록한 후에 RouteTable에 관련 경로를 동적으로 추가하는 것이 이상적입니다. 나는 이것을 시도했다 :
RouteTable.Routes.Add(
RouteTable.Routes.MapRoute(
toAdd.UrlSlug + "Homepage",
toAdd.UrlSlug,
new { controller = "Controller", View = "View", urlSlug = toAdd.UrlSlug }
)
);
그러나 그것은 작동하지 않았다. 다른 곳에서는 솔루션을 찾을 수 없으며, 내 코드가 끔찍하게 순진하고 라우팅에 대한 이해가 부족하다는 것을 잘 알고 있습니다. 도움을주십시오!
나는이 일을 해결하지만, 즉시 손에없는 코드를 수행하고하는 것은 내 자신의 질문에 대답의 에티켓 확실하지 않았다했습니다! 누구든지 후반 부분에 조언을 할 수 있다면 사람들에게 내가 어떻게 고쳐 주는지 알려주 게되어 기쁩니다. – jonsidnell
질문에 답하고 올바른 것으로 표시하십시오. 이전 질문이지만 가능한 경우 솔루션을 게시 할 수 있습니까?완전성 및 사실 똑같은 문제가 있다는 사실 모두 : – Will