처음으로 알아보는 XML 웹 서비스 빠르게 시작하고 싶은 분들은 생성 및 호출 방법을 빠르게 이해하고 싶을 수도 있습니다. 이 기사에서는 간단한 예를 사용하여 Visual Studio 2008을 사용하여 웹 서비스를 생성하는 방법과 이를 호출하는 방법을 설명합니다. 예제의 웹 서비스는 클라이언트 프로그램의 요청에 따라 이미지를 반환합니다.
1. 생성웹 서비스프로젝트
VS2008을 열고 열린 새 프로젝트 대화 상자에서 파일/새 프로젝트 메뉴 항목을 선택합니다. , Visual C# -> 웹 -> ASP.NET 웹 서비스 애플리케이션을 선택한 다음 프로젝트 이름 (이름)과 저장 위치 (위치) 및 솔루션 이름 (솔루션 이름)을 입력한 후 "확인"을 클릭하여 프로젝트를 생성합니다. 이 예에서는 AnnotationWebService를 프로젝트 및 솔루션 이름으로 사용합니다(그림 1 참조).
사진 1: 새 프로젝트대화
2. 웹 서비스 추가
VS2008의 솔루션 탐색기에서 를 클릭합니다. AnnotationWebService 항목에서 Project/Add new item 메뉴 항목을 선택하고, 열린 새 항목 추가 대화 상자에서 웹/웹 서비스를 차례로 선택합니다. , 웹 서비스 (이름)의 이름을 입력하고 "추가"를 클릭하여 웹 서비스를 추가합니다. 이 예에서는 Web Service의 이름으로 ImageService를 사용합니다(그림 2 참조).
사진 2:새 항목 추가대화상자
이후 솔루션 탐색기에 해당 프로젝트 디렉터리가 표시됩니다(그림 3 참조). (참고: 프로젝트 생성 시 시스템은 기본적으로 Service1이라는 이름의 웹 서비스를 추가합니다. 마우스 오른쪽 버튼 클릭에서 삭제 항목을 클릭할 수 있습니다. 메뉴에서 삭제하세요.
사진
3
: 솔루션 탐색기
3.
인코딩 웹 서비스
ImageService.asmx를 마우스 오른쪽 버튼으로 클릭하고 마크업 보기를 선택하여 이 파일을 열면 다음 줄을 볼 수 있습니다. ImageService의 코드가 <🎜에 있음을 나타냅니다. >ImageService.asmx.cs 파일. ImageService.asmx를 마우스 오른쪽 버튼으로 클릭하고 코드 보기를 선택한 다음 ImageService.asmx.cs 파일을 열고 서비스 코드를 추가합니다. 주어진 파일 이름을 기반으로 이미지를 읽고 이를 클라이언트에 반환하는 GetImage 메서드를 작성합니다(아래 코드 참조). 아아앙 4. >가상 디렉터리 추가(Virtual Directory) IIS 콘솔 프로그램을 열고 기본 웹 사이트를 마우스 오른쪽 버튼으로 클릭한 다음 새/가상 디렉터리 추가를 선택합니다. 메뉴 항목에서 열린 가상 디렉터리 캡션 마법사 대화 상자에 가상 디렉터리 별칭 (별칭)을 입력합니다. 이 예에서는 AnnotationWebService를 입력하고 "<를 클릭합니다. 🎜>다음 "을 클릭한 후 ImageService.asmx가 있는 디렉터리를 선택하고 "마침"이 나올 때까지 "다음"을 클릭합니다. (참고: 위 설명은 XP SP3 환경 기준입니다.) 5. 웹 서비스용 프록시 만들기 VS2008에서 Windows 애플리케이션 솔루션 (.sln)을 엽니다. 이 예에서는 솔루션을 엽니다. AnnotationApp이라고 합니다.웹 서비스를 호출하려는 프로젝트를 마우스 오른쪽 버튼으로 클릭하고(예를 들어 이 예에서는 DataLib 사용을 선택함) 웹 참조 추가를 선택합니다. 메뉴 항목(추가된 적이 없는 경우 웹 참조를 통과한 후 웹 참조 추가 메뉴 항목이 표시되지 않을 수 있습니다. 먼저 서비스 참조 추가<🎜를 선택할 수 있습니다. > 메뉴 항목을 클릭한 후 팝업 추가 서비스 참조 대화 상자에서 "고급"을 클릭한 후 팝업 메뉴에서 "웹 참조 추가"를 클릭합니다. 팝업 서비스 참조 설정 대화 상자) 팝업으로 나타나는 웹 참조 추가 대화 상자에 웹 서비스의 URL을 입력합니다. 이 예에서는 http://localhost/AnnotationWebService/ImageService.asmx "이동"을 클릭하면 아래 웹페이지에 ImageService가 에 표시됩니다. 웹 참조 이름편집 상자에 Web에서 참조하는 이름을 입력합니다. ImageService라는 이름을 다시 사용하지 않으려면 여기에 ImageWebService를 입력합니다. 그림4)을 참조한 다음 "참조 추가"를 클릭하여 웹 참조를 추가하세요. 사진 4: 웹 참조 추가대화상자 이렇게 하면 솔루션 탐색기에 웹 참조가 추가됩니다(그림 5 참조). 그림 5: 웹 참조 추가 추가된 참고자료는 이미지입니다 ImageService와 동일한 이름의 클래스를 포함하는 Service의 프록시 코드는 System.Web.Services.Protocols.SoapHttpClientProtocol에서 파생됩니다. 이러한 방식으로 클라이언트 코드는 자체 Assembly에서 메서드를 호출하는 것처럼 ImageService의 GetImage 메서드를 호출할 수 있습니다. 6. 客户程序调用Web Service 在客户程序中需要调取图像的地方增加如下代码(注:代码中的Image类不是.Net Framework类库中的Image类,是客户程序中的一个类): 然后,可以将图像显示出来。 7.运行客户程序来测试Web Service调用 编译运行客户程序,Web Service被成功调用并返回所调用的图像(见图6)。 그림 6: 실행 결과
위 내용은 XML 웹 서비스 그래픽 코드 예제에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!<%@ WebService Language="C#" CodeBehind="ImageService.asmx.cs" Class="AnnotationWebService.ImageService" %>
ImageService imageService = new ImageService();
Bitmap bitmap;
try
{
byte[] image = imageService.GetImage("half-bred panthers.jpg");
MemoryStream memoryStream = new MemoryStream(image);
bitmap = new Bitmap(memoryStream);
_image = new Image(_viewportTransformer, bitmap);
}
catch (WebException e)
{
// Exception handling
}