2013-11-28 3 views
2

저는 ASP.NET MVC3 면도기 프로젝트를 가지고 있습니다. 이 프로젝트에 aspx 페이지를 추가하고 싶었고 MapPageRoute를 사용하여 가능하다는 것을 알았습니다. 내 GlobalAsax.RegisterRoutes에 추가하고 그것이 내 aspx 페이지로 리디렉션됩니다. 뿐만 아니라 이전 페이지의 대부분이로 리디렉션됩니다 - 그들은,이 같은 점점 URL이 재 :MapPageRoute wront 페이지 리디렉션

http://localhost:61000/AEM/Report?action=EditUser&controller=Settings 

내 RegisterRoutes 방법 :

public static void RegisterRoutes(RouteCollection routes) 
    { 
     routes.MapPageRoute(
      "TelerikReport", 
      "AEM/Report", 
      "~/WebForms/TelerikReport.aspx", true 
     ); 

     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

     routes.MapRoute(
       "Default", // Route name 
       "{controller}/{action}/{id}", // URL with parameters 
       new { controller = "Account", action = "LogOn", id = UrlParameter.Optional } // Parameter defaults 
    } 

내가 잘못 여기서 뭐하는 거지?

편집 : 내 컨트롤러에서 "return RedirectToAction (...)"을 사용할 때 페이지가 잘못 리디렉션되는 것으로 나타났습니다. 내가 확실하지 않지만

routes.MapPageRoute(
     "TelerikReport", 
     "AEM/Report/{*queryvalues}", 
     "~/WebForms/TelerikReport.aspx", true 
    ); 

,하지만 당신은 그것을 시도를 제공 할 수 있습니다 :

+0

대부분의 오래된 페이지는 무엇을 의미합니까? 전부는 아니지, 그렇지? 한 가지 더 컨트롤러 "AEM"및 메서드 "Report"가 있습니까? –

+0

네, 전부는 아닙니다. "AEM"컨트롤러와 "Report"방법이 없습니다. routeURL을 "AEM2/Report"로 변경 했는데도 문제가 계속 발생합니다. 예를 들어 응용 프로그램 시작 부분에서 : http : // localhost : 61000/AEM2/Report? action = Index & controller = http : // localhost : 61000/Home/Index –

답변

1

봅니다 같이 코드를 수정합니다. 설명 된대로 Here.

+0

때 홈으로 리디렉션됩니다. 여전히이 문제입니다. 내가 RedirectToAction을 사용할 때 그런 일이 일어나고 있음을 알았다. 응용 프로그램을 시작할 때 또는 로그인하지 않고 일부 작업에 액세스하려는 경우이를 사용하고 있습니다. 로그인 한 직후에도 지금 내 응용 프로그램을 사용할 수 없습니다. –

+0

로그인하기 전에 사용하려면 마지막 인수를 false로 전달하십시오. 즉, routes.MapPageRoute ( "TelerikReport", "AEM/Report/{* queryvalues}", "~/WebForms/TelerikReport.aspx", false ); –

+1

아니, 아직 작동하지 않습니다 :/ –