방법: 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 웹 프로젝트와 모든 코드 종속성에 대한 종속성 그래프
하나 이상의 ASP.NET 웹 프로젝트가 포함된 솔루션을 엽니다.
아키텍처 메뉴에서 종속성 그래프 생성을 가리키고 다음 단계 중 하나를 수행합니다.
작업
클릭 대상
클래스 수준에서 모든 웹 프로젝트와 코드 종속성에 대한 종속성 보기
웹 사이트별
기존 그래프에 메서드 종속성을 추가하려면 그래프를 마우스 오른쪽 단추로 클릭한 다음 Get Code Dependencies(코드 종속성 가져오기)를 클릭합니다.
모든 수준에서 모든 웹 프로젝트 및 코드 종속성에 대한 종속성 보기
코드 종속성과 함께 웹 사이트별
아티팩트의 소스를 보려면 그래프에서 아티팩트의 노드를 두 번 클릭합니다.
그래프를 다시 정렬하고 편집하는 방법에 대한 자세한 내용은 다음을 참조하십시오.
특정 웹 프로젝트 항목에 대한 종속성 보기
아키텍처 탐색기를 사용하여 웹 프로젝트의 특정 항목과 관계를 선택합니다. 그런 다음 선택한 항목에서 종속성 그래프를 만들 수 있습니다.
참고
이 기능은 ASP.NET 웹 응용 프로그램 프로젝트와 ASP.NET MVC 2 프로젝트만 지원합니다.
하나 이상의 웹 프로젝트가 포함된 솔루션을 엽니다.
아키텍처 탐색기가 열려 있지 않은 경우 아키텍처 메뉴에서 창을 가리킨 다음 아키텍처 탐색기를 클릭합니다.
아키텍처 탐색기를 사용하여 시각화하려는 아티팩트와 관계를 찾습니다.
항목을 선택하여 빈 그래프나 기존 그래프로 끌어 옵니다.
아키텍처 탐색기를 사용하여 코드 요소와 솔루션 아티팩트를 찾아보는 방법에 대한 자세한 내용은 다음을 참조하십시오.
기존 그래프에서 더 깊은 수준의 종속성 보기
클래스 수준 종속성만 보여 주는 웹 프로젝트의 그래프를 생성한 경우 새 그래프를 생성하지 않고 메서드 수준 종속성을 추가할 수 있습니다.
경고
이 작업에서는 그래프에 수동으로 추가되었고 그래프의 웹 사이트와 관계가 없는 모든 항목을 제거합니다.
기존 그래프에서 더 깊은 수준의 종속성을 보려면
- 그래프를 마우스 오른쪽 단추로 클릭한 다음 Get Code Dependencies(코드 종속성 가져오기)를 클릭합니다.