다음을 통해 공유


방법: ASP.NET 웹 프로젝트에 대한 종속성 그래프 생성

이 Visual Studio 2010 Feature Pack을 사용하면 Visual Studio 2010 Ultimate에서 종속성 그래프를 생성하여 ASP.NET 웹 프로젝트의 구성과 관계를 탐색할 수 있습니다. 자세한 내용은 Visual Studio 기능 팩을 참조하십시오.

중요

이 기능을 사용하려면 Visual Studio 2010 Feature Pack을 설치해야 합니다.

다음 웹 프로젝트 형식의 종속성 그래프를 생성할 수 있습니다.

  • ASP.NET 웹 사이트

  • ASP.NET 웹 응용 프로그램

  • ASP.NET MVC 2 프로젝트

종속성 그래프는 요소 및 요소 관계를 링크로 연결되는 노드로 표현합니다.

웹 프로젝트 및 모든 종속성 그래프

ASP.NET 웹 프로젝트와 모든 코드 종속성에 대한 종속성 그래프

이러한 그래프를 사용하여 마스터 페이지, 컨트롤, 서버 컨트롤, 모델, 뷰, 컨트롤러 및 코드 숨김 요소와 같은 웹 아티팩트 간의 논리적 구성 및 종속성을 쉽게 시각화하고 탐색하고 관리할 수 있습니다. 이는 아티팩트의 변경이 다른 관련 아티팩트에 미칠 수 있는 영향을 이해하는 데 도움이 됩니다. 솔루션의 모든 웹 사이트나 특정 프로젝트 항목에 대한 종속성 그래프를 생성할 수 있습니다.

참고

웹 프로젝트만 그래프에 나타납니다. 매우 큰 솔루션이 있는 경우 종속성 그래프를 생성하면 모든 파일을 구문 분석하는 데 시간이 걸리거나 메모리 부족 예외가 발생할 수 있습니다. 이러한 경우 솔루션의 범위를 줄이거나, 그래프를 생성하기 전에 아키텍처 탐색기를 사용하여 특정 요소와 관계를 선택합니다. 기능 팩이 설치되지 않은 Visual Studio Ultimate에서 저장된 웹 프로젝트 종속성 그래프를 열면 그래프의 아이콘이 올바르게 나타나지 않습니다.

웹 프로젝트의 그래프를 생성할 때 다음 사항에 유의하십시오.

  • 그래프에는 웹 프로젝트와 관련된 종속성만 표시됩니다.

  • 노드의 경고 아이콘(!)은 구문 분석 문제가 발생했음을 나타냅니다. 문제에 대해 자세히 보려면 포인터를 노드 맨 위로 이동하여 도구 설명을 읽습니다.

  • 웹 사이트 아티팩트 간의 링크는 한 아티팩트에서 다른 아티팩트를 사용하는 것과 같은 종속성을 나타냅니다. 코드 요소 간의 링크는 메서드 호출과 같은 종속성을 나타냅니다.

  • ASP.NET MVC 2 프로젝트의 경우 Visual Studio에서는 아티팩트가 예상되는 파일 이름을 갖고 있고 예상되는 폴더 위치에 있는 경우에만 아티팩트의 노드와 링크를 표시합니다.

  • 포인터를 링크 맨 위로 이동한 다음 더하기 기호(+)를 두 번 클릭하여 링크에 대한 자세한 정보를 볼 수 없습니다.

  • 그래프를 생성할 때 Visual Studio에서는 특정 형식의 네임스페이스를 확인하지 못할 수도 있습니다. 이러한 형식은 그래프의 Global 네임스페이스에 나타납니다. 그래프에서 이러한 형식을 두 번 클릭하여 더 탐색할 수 없습니다.

  • 그래프의 노드는 빌드되지 않은 프로젝트의 형식을 나타낼 수도 있습니다. 이러한 노드를 두 번 클릭하여 코드를 보는 작업은 실패하거나 몇 초가 걸릴 수 있습니다. 이 단계를 반복적으로 수행하면 지연이 발생하고 그래프가 응답하지 않을 수 있습니다. 이 문제를 방지하거나 해결하려면 솔루션을 빌드한 다음 그래프를 생성해야 합니다.

  • 다른 네임스페이스를 갖고 있지만 동일한 tagprefix를 사용하여 등록된 사용자 지정 컨트롤은 그래프에서 동일한 네임스페이스에 나타납니다. 자세한 내용은 @ Register를 참조하십시오.

  • ASP.NET MVC 2 프로젝트의 경우 다음 메서드에 대한 호출을 나타내는 링크는 해당 인수가 구문 분석될 수 없는 경우 등에 그래프에 나타나지 않을 수 있습니다.

    • System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial

    • System.Web.Mvc.Html.ChildActionExtensions.Action

    • System.Web.Mvc.Html.ChildActionExtensions.RenderAction

    자세한 내용은 다음을 참조하십시오.

ASP.NET 웹 프로젝트에 대한 자세한 내용은 ASP.NET 4를 참조하십시오.

항목 내용

  • 솔루션의 웹 프로젝트에 대한 종속성 보기

  • 특정 웹 프로젝트 항목에 대한 종속성 보기

  • 기존 그래프에서 더 깊은 수준의 종속성 보기

솔루션의 ASP.NET 웹 프로젝트에 대한 종속성 보기

다음 수준에서 웹 프로젝트의 종속성과 논리적 구성을 보여 주는 그래프를 생성할 수 있습니다.

  • 클래스 수준에서 솔루션의 모든 웹 프로젝트 및 코드 종속성

  • 모든 수준에서 모든 웹 프로젝트 및 코드 종속성

웹 프로젝트 및 클래스 수준 종속성 그래프

ASP.NET 웹 프로젝트와 클래스 수준 종속성에 대한 종속성 그래프

웹 프로젝트 및 모든 종속성 그래프

ASP.NET 웹 프로젝트와 모든 코드 종속성에 대한 종속성 그래프

  1. 하나 이상의 ASP.NET 웹 프로젝트가 포함된 솔루션을 엽니다.

  2. 아키텍처 메뉴에서 종속성 그래프 생성을 가리키고 다음 단계 중 하나를 수행합니다.

    작업

    클릭 대상

    클래스 수준에서 모든 웹 프로젝트와 코드 종속성에 대한 종속성 보기

    웹 사이트별

    기존 그래프에 메서드 종속성을 추가하려면 그래프를 마우스 오른쪽 단추로 클릭한 다음 Get Code Dependencies(코드 종속성 가져오기)를 클릭합니다.

    모든 수준에서 모든 웹 프로젝트 및 코드 종속성에 대한 종속성 보기

    코드 종속성과 함께 웹 사이트별

  3. 아티팩트의 소스를 보려면 그래프에서 아티팩트의 노드를 두 번 클릭합니다.

    그래프를 다시 정렬하고 편집하는 방법에 대한 자세한 내용은 다음을 참조하십시오.

특정 웹 프로젝트 항목에 대한 종속성 보기

아키텍처 탐색기를 사용하여 웹 프로젝트의 특정 항목과 관계를 선택합니다. 그런 다음 선택한 항목에서 종속성 그래프를 만들 수 있습니다.

참고

이 기능은 ASP.NET 웹 응용 프로그램 프로젝트와 ASP.NET MVC 2 프로젝트만 지원합니다.

  1. 하나 이상의 웹 프로젝트가 포함된 솔루션을 엽니다.

  2. 아키텍처 탐색기가 열려 있지 않은 경우 아키텍처 메뉴에서 을 가리킨 다음 아키텍처 탐색기를 클릭합니다.

  3. 아키텍처 탐색기를 사용하여 시각화하려는 아티팩트와 관계를 찾습니다.

  4. 항목을 선택하여 빈 그래프나 기존 그래프로 끌어 옵니다.

아키텍처 탐색기를 사용하여 코드 요소와 솔루션 아티팩트를 찾아보는 방법에 대한 자세한 내용은 다음을 참조하십시오.

기존 그래프에서 더 깊은 수준의 종속성 보기

클래스 수준 종속성만 보여 주는 웹 프로젝트의 그래프를 생성한 경우 새 그래프를 생성하지 않고 메서드 수준 종속성을 추가할 수 있습니다.

경고

이 작업에서는 그래프에 수동으로 추가되었고 그래프의 웹 사이트와 관계가 없는 모든 항목을 제거합니다.

기존 그래프에서 더 깊은 수준의 종속성을 보려면

  • 그래프를 마우스 오른쪽 단추로 클릭한 다음 Get Code Dependencies(코드 종속성 가져오기)를 클릭합니다.

참고 항목

개념

기존 코드 시각화

기타 리소스

ASP.NET 4

방법: 그래프 문서 찾아보기 및 탐색

방법: 종속성 그래프를 사용하여 코드 탐색

방법: 그래프 문서 편집 및 사용자 지정

방법: C 및 C++ 코드에 대한 종속성 그래프 생성