2011-09-23 4 views
0

내 MVC 앱의 경로 매핑이 갑자기 끊어졌습니다. 여기 경로 매핑이 갑자기 끊어졌습니다. 어떻게 고치는 지?

다음은 컨트롤러 코드

public class HomeController : Controller 
{ 
    public ActionResult Index() 
    { 
     return View(); 
    } 

    public string Login() 
    { 
     return "Login"; 
    } 
} 

입니다 내가 http://localhost:49637/를 사용하여 인덱스보기에 액세스 할 수 있습니다하지만 난 http://localhost:49637/Login를 통해 로그인보기에 액세스 할 수 없습니다 경로 매핑

public static void RegisterRoutes(RouteCollection routes) 
    { 
     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

     routes.MapRoute(
      "Default", // Route name 
      "{controller}/{action}", // URL with parameters 
      new { controller = "Home", action = "Index" } // Parameter defaults 
     ); 
    } 

있습니다. http://localhost:49637/Home/Login을 통해 로그인보기에 액세스하려고하면 작동합니다.

답변

1

유일한 경로가 컨트롤러와 작업 값을 모두 찾는 'http : // localhost : 49637/Login'과 일치하는 경로가 없습니다. MVC가 하나의 값만 전달하므로 경로를 지정하려고합니다. 존재하지 않는 '로그인'컨트롤러로 이동합니다. 나는이 테스트를하지 않은,하지만이 같은 추가 뭔가 위의이 경로를 배치해야합니다, 그래서 asp.net MVC, 그것은 발견되는 첫 번째 일치하는 경로를 사용하는 것을 기억하여 problem-

routes.MapRoute(
    "Login", 
    "Login", 
    new { controller = "Home", action = "Login" } 
); 

을 수정해야 RegisterRoutes 함수의 'default'경로.

+0

방금 ​​문제를 발견했습니다. 그것은 MVC에 대한 나의 가난한 지식이 원인이었습니다. 어쨌든 고마워. –

+0

당신의 문제가 해결되었다고 생각하면 그의 대답을 올바르게 표시하십시오. – Zasz

관련 문제