방법: 관리 코드의 웹 서비스 배포
업데이트: 2007년 11월
Visual Studio .NET을 사용하여 관리 코드로 웹 서비스를 만들 때는 표준 배포 모델을 사용합니다. 즉, 프로젝트를 컴파일한 다음 만들어진 파일을 프로덕션 서버에 배포합니다. 프로젝트 .dll 파일에는 코드 숨김 웹 서비스 클래스 파일(.asmx.vb 또는 .asmx.cs)과 함께 프로젝트에 포함된 다른 모든 클래스 파일이 들어 있지만 .asmx 파일 자체는 들어 있지 않습니다. 컴파일한 다음에는 소스 코드 없이 이 프로젝트 .dll 파일만을 프로덕션 서버에 배포합니다. 웹 서비스에서 요청을 받으면 프로젝트 .dll 파일이 로드되고 실행됩니다.
관리 코드의 웹 서비스 컴파일 및 배포
다음과 같은 요소를 포함하는 WebService1이라는 간단한 ASP.NET 웹 서비스 프로젝트가 있다고 가정합니다.
Service.asmx라는 웹 서비스 진입 페이지
Service.vb(또는 .cs)라는 코드 파일
이 프로젝트를 컴파일할 때 다음과 같은 작업이 수행됩니다.
마지막 빌드 이후 수정한 프로젝트의 모든 파일이 저장됩니다.
Service1.asmx 파일 및 기본 프로젝트 파일이 개발 웹 서버로 복사됩니다.
Service.vb(또는 .cs) 클래스 파일과 Global.asax 클래스 파일이 프로젝트 .dll 파일로 컴파일된 다음, 서버에 있는 대상 가상 디렉터리의 기본 \bin 디렉터리로 .dll 파일이 복사됩니다. 디버그 버전을 컴파일하도록 프로젝트를 설정한 경우 \bin 디렉터리에 프로젝트 .pdb 파일이 생성됩니다.
참고: 컴파일 오류가 발생하면 배포에 실패합니다. 자세한 내용은 방법: 관리 코드의 웹 서비스 디버깅을 참조하십시오.
웹 서비스를 개발 서버가 아닌 다른 서버로 배포하려는 경우에, 웹 설치 프로젝트를 추가하거나 필요한 파일을 대상 서버에 복사할 수 있습니다. 다른 사람이 웹 서비스를 사용할 수 있게 하려면 지원할 클라이언트에서 액세스할 수 있는 웹 서버에 웹 서비스를 배포해야 합니다. 자세한 내용은 응용 프로그램 및 구성 요소 배포 및 방법: 프로젝트 복사를 참조하십시오.
프로젝트를 복사하여 웹 서비스를 배포하려면
솔루션 탐색기에서 복사할 프로젝트를 선택합니다.
웹 사이트 메뉴에서 웹 사이트 복사를 클릭합니다.
연결 대상: 드롭다운 상자 옆에 있는 아이콘을 클릭하여 웹 사이트 열기 대화 상자를 엽니다.
웹 사이트 열기 상자에서 프로젝트를 복사할 위치를 선택합니다.
화살표 아이콘을 사용하여 원격 웹 사이트에 복사할 소스 웹 사이트의 파일을 선택합니다.
웹 사이트 복사를 클릭하여 웹 사이트를 복사합니다.
웹 서비스를 배포한 다음에는 웹 서비스를 다른 사용자에게 허용하는 경우 개발자가 찾을 수 있게 하는 방법을 고려해야 합니다. 자세한 내용은 방법: XML Web services의 검색을 사용하도록 설정를 참조하십시오.