다음을 통해 공유


샌드박스 솔루션과 팜 솔루션의 차이점

SharePoint 솔루션을 컴파일하면 솔루션이 SharePoint 서버에 배포되고 디버그를 위해 디버거가 연결됩니다. 솔루션을 디버그하는 데 사용되는 프로세스는 샌드박스 솔루션 속성인 샌드박스 솔루션 또는 팜 솔루션의 설정에 따라 달라집니다.

자세한 내용은 샌드박스 솔루션 고려 사항을 참조하세요.

팜 솔루션

IIS 작업자 프로세스(W3WP.exe)에서 호스트되는 팜 솔루션은 전체 팜에 영향을 줄 수 있는 코드를 실행합니다. 샌드박스 솔루션 속성이 “팜 솔루션”으로 설정된 SharePoint 프로젝트를 디버그하는 경우 SharePoint가 기능을 취소하거나 배포하기 전에 시스템의 IIS 애플리케이션 풀이 재활용되므로 IIS 작업자 프로세스에 의해 잠긴 파일을 해제할 수 있습니다. SharePoint 프로젝트의 사이트 URL을 제공하는 IIS 애플리케이션 풀만 재활용됩니다.

샌드박스 솔루션

SharePoint 사용자 코드 솔루션 작업자 프로세스(SPUCWorkerProcess.exe)에서 호스트되는 샌드박스 솔루션은 솔루션의 사이트 모음에만 영향을 줄 수 있는 코드를 실행합니다. 샌드박스 솔루션은 IIS 작업자 프로세스에서 실행되지 않으므로 IIS 애플리케이션 풀과 IIS 서버가 모두 다시 시작되지 않아야 합니다. Visual Studio는 SharePoint의 SPUserCodeV4 서비스가 자동으로 트리거하고 제어하는 SPUCWorkerProcess 프로세스에 디버거를 연결합니다. SPUCWorkerProcess 프로세스에서 최신 버전의 솔루션을 로드하기 위해 재활용할 필요는 없습니다.

두 솔루션 유형 중 하나

두 솔루션 유형 중 하나에서 Visual Studio는 디버거를 브라우저에 연결하여 클라이언트 쪽 스크립트 디버깅을 사용하도록 설정합니다. Visual Studio는 이 목적을 위해 스크립트 디버깅 엔진을 사용합니다. 스크립트 디버깅을 사용하려면 메시지가 표시될 때 기본 브라우저 설정을 변경해야 합니다.

Visual Studio는 현재 사이트를 실행하는 W3WP 또는 SPUCWorkerProcess 프로세스에만 디버거를 연결합니다. Visual Studio는 관리형 COM Plus 및 워크플로 디버깅 엔진도 연결합니다.