ASP.NET MVC 응용 프로그램에서 디버깅을위한 시작 페이지를 어떻게 설정합니까?


131

응용 프로그램 루트에서 응용 프로그램 디버깅을 어떻게 시작합니까? 예를 들면 다음과 같습니다. http : // localhost : 49742 /

나는 항상 존재하지 않는 페이지를 얻는다 : http : // localhost : 49742 / Views / Home / About.aspx

참고가에서 시작하려면 확인 될 것이라고 에 http : // localhost를 : 49742 / 조회 / 홈 / 소개


답변:


218

프로젝트 속성으로 이동하여 시작 페이지 속성을 설정하십시오.

  1. 프로젝트의 속성으로 이동
  2. 탭으로 이동
  3. 특정 페이지 단일 선택 단추를 선택하십시오.
  4. 특정 페이지 텍스트 상자 에 원하는 URL을 입력하십시오.

1
@ Mark- 여기에 자세한 내용을 설명하는 좋은 링크가 있습니다. stephenwalther.com/blog/archive/2008/07/10/… 나는 당신의 대답에 넣었습니다.
RichardOD

22
+1 반드시 에 입력 하여 단계 4. 선택을 [...] 가짜 URL이 생성됩니다 버튼 : D
P.Brian.Mackey

10
VS.NET 2010에서 기본 MVC 프로젝트 템플릿을 테스트하고 작업하는 경우 시작 페이지의 값을 지우고 프로젝트를 디버깅하십시오. "ASP.NET MVC에 오신 것을 환영합니다!" 페이지.
atconway

3
위의 단계 외에도 시작 프로젝트를 올바르게 선택했는지 확인해야합니다 (여러 프로젝트가있는 경우 기본 페이지를 설정하는 것만으로는 충분하지 않음). 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 시작 프로젝트로 설정하십시오. 그런 다음 솔루션 트리에서 프로젝트 이름이 굵게 표시됩니다.
Jazimov

3
4 단계에서 @ Mark- 텍스트 상자를 비워두고 특정 페이지 단일 선택 단추를 선택하면 응용 프로그램 루트에서 디버깅을 시작합니다.
amraby

22

MVC 프로젝트에서 기본 페이지를 가질 수 있지만 기본보기에 대한보다 일반적인 구현은 'RegisterRoutes (...)'메소드를 통해 global.asax에 구현 된 기본 컨트롤러를 사용하는 것입니다. 예를 들어 Public \ Home 컨트롤러를 기본 경로 /보기로 설정하려면 코드는 다음과 같습니다.

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

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

    }

이 기능이 작동하려면 프로젝트에 설정된 시작 페이지가 있어야합니다.


이 실제 좋은 대답 그래서 와우 ... 이것은 실제로 (적어도, 아니 나를 위해, 허용 대답의 경우에는 해당되지 않습니다하는)에도 서버에 게시 한 후 작동
앙투안의 Pelletier

10

이것은 MVC의 특정 페이지에서 작동합니다.

/Home/Index

업데이트 : 현재 "특정 페이지"텍스트 상자에 슬래시를 사용하면 라우팅에 정의 된대로 홈 페이지로 이동합니다.

/

좋은 간단한 대답. 그러나 시작 URL과 비슷한 것을 입력 한 경우에도 여전히 유효하지 않은 URL 메시지가 표시됩니다 (현재 선택되어 있지 않은 경우에도). 따라서 시작 URL을 선택하고 텍스트를 삭제 한 다음 특정 페이지 속성을 위와 같이 상대 경로로 설정하십시오.
앤디 브라운

7

프로젝트 속성에서 특정 페이지를 선택해도 문제가 해결되지 않습니다.

MVC 4에서 App_Start / RouteConfig.cs를 엽니 다.

예를 들어 시작 페이지를 로그인 으로 변경하려는 경우 :

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

1

설명 할 때 "응용 프로그램 루트"에서 시작하려면 최상위 Default.aspx 페이지를 마우스 오른쪽 단추로 클릭하고 시작 페이지로 설정을 선택하십시오. F5를 누르십시오.

다른 컨트롤러 작업을 시작하려면 Mark의 답변을 참조하십시오.


1
MVC에서도 작동합니까? 나를 위해 ASPX 페이지를 시작하려고 시도하고 라우팅하지 않습니다.
Robaticus

1

이 페이지를 다시 방문하면 다른 사람들과 공유 할 정보가 더 있습니다.

디버깅 환경 (Visual Studio 사용)

1a) 프로젝트 속성을 사용하여 MVC에서 시작 페이지를 설정하는 Stephen Walter의 링크는 MVC 응용 프로그램을 디버깅 할 때만 적용 할 수 있습니다.

1b) 솔루션 탐색기에서 .aspx 페이지를 마우스 오른쪽 버튼으로 클릭하고 "시작 페이지로 설정"을 선택하면 동일하게 작동합니다.

참고 : 위의 두 경우 모두 시작 페이지 설정은 Visual Studio Development Server에서만 인식됩니다. 배포 된 서버에서 인식하지 못합니다.

배포 된 환경

2a) 기본 라우팅을 변경하지 않았다고 가정하고 시작 페이지를 설정하려면 /Views/Home/Index.aspx의 내용을 원하는대로 "Server.Transfer"또는 "Response.Redirect"로 변경하십시오. 페이지.

2b) global.asax.cs의 기본 라우팅을 원하는 페이지로 변경하십시오.

독자가 알고있는 다른 옵션이 있습니까? 위의 (자신의 옵션을 포함하여) 어느 것이 당신의 선호 솔루션이됩니까 (그리고 그 이유를 알려주세요)?

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.