현재 오프라인 상태입니다. 인터넷에 다시 연결하기를 기다리고 있습니다.

방법: 보내기 및 ASP.NET 웹 서비스 및 Visual C# .NET을 사용하여 이진 문서 받기

중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

318425
요약
이 문서에서는 웹 서비스 및 Microsoft ASP.NET 및 Microsoft Visual C# .NET을 사용하여 이진 문서를 받을 웹 서비스 클라이언트를 빌드하는 방법을 보여 줍니다. ASP.NET 및 Visual C# .NET을 사용하여 모두 이진 문서 폴더에 웹 서버에 저장하고 웹 서버의 폴더에 이진 문서를 검색하는 웹 서비스를 빌드할 수 있습니다. 웹에서 간단한 문서 관리 시스템이 이 서비스를 사용할 수 있습니다.

back to the top

웹 서비스 빌드

  1. Visual Studio .NET의 파일 메뉴에서 새로 만들기를 클릭한 다음 프로젝트 를 클릭하십시오.
  2. ASP.NET 웹 서비스 에서 Visual C# 프로젝트 를 선택하십시오. 또는 http://localhost/DocumentManagementService위치 를 붙여 입력한 다음 확인 을 누릅니다. 기본적으로 Service1.asmx 만들어지고 디자인 보기에 표시됩니다.
  3. 보기 메뉴에서 Service1.asmx 코드 보기를 표시하려면 코드 클릭하십시오.
  4. 다음 웹 메서드 코드를 Service1 클래스 추가합니다:
    [WebMethod]public bool SaveDocument( Byte[] docbinaryarray, string docname){	string strdocPath;	strdocPath = "C:\\DocumentDirectory\\" + docname;	FileStream objfilestream =new FileStream(strdocPath,FileMode.Create,FileAccess.ReadWrite);	objfilestream.Write(docbinaryarray,0,docbinaryarray.Length);	objfilestream.Close();	return true;}[WebMethod]public int GetDocumentLen(string DocumentName){	string strdocPath;	strdocPath = "C:\\DocumentDirectory\\" + DocumentName;	FileStream objfilestream = new FileStream(strdocPath,FileMode.Open,FileAccess.Read);	int len = (int)objfilestream.Length;				objfilestream.Close();	return len;} [WebMethod]public Byte[] GetDocument(string DocumentName){	string strdocPath;	strdocPath = "C:\\DocumentDirectory\\" + DocumentName;	FileStream objfilestream = new FileStream(strdocPath,FileMode.Open,FileAccess.Read);	int len = (int)objfilestream.Length;				Byte[] documentcontents  = new Byte[len];	objfilestream.Read(documentcontents,0,len);	objfilestream.Close();	return documentcontents;	} 					

    참고:<root>코드를 사용하여 <루트> 문서를 저장하는: 서버의 디렉터리 경로에 \\DocumentDirectory\\. 웹 서버에 문서를 저장할 폴더로 변경하십시오.

  5. 해당 Service1.asmx 시작 부분에 다음 네임스페이스를 추가합니다:
    using System.IO;
  6. 웹 서비스 테스트:
    1. 디버그 메뉴에서 웹 서비스를 시작하려면 시작 을 클릭하십시오. 이 웹 브라우저를 시작하고 서비스 설명 도움말 페이지가 나타납니다.
    2. SaveDocument, GetDocumentGetDocumentLen 메서드 나타나는지 확인하십시오.
    3. 디버깅을 중지하고 웹 브라우저 창을 닫습니다.
back to the top

웹 서비스의 클라이언트 빌드

  1. Visual Studio .NET의 파일 메뉴에서 프로젝트 추가 클릭한 다음 새 프로젝트 를 클릭하십시오.
  2. Visual C# 프로젝트 목록에서 Windows 응용 프로그램 을 선택하고 확인 을 클릭하십시오. 기본적으로 Form1이 만들어집니다.
  3. 다음과 같이 웹 서비스에 웹 참조를 추가해야 합니다.
    1. 솔루션 탐색기에서 클라이언트 프로젝트 항목을 마우스 오른쪽 단추로 클릭하십시오. 다음 컨텍스트 메뉴에서 웹 참조 추가 선택하십시오.
    2. 웹 참조 추가 대화 상자에서 웹 서비스의 WSDL (웹 서비스 설명 언어) 파일의 URL을 입력한 다음 Enter 키를 누릅니다.

      참고: WSDL 파일의 기본 위치는 http://localhost/DocumentManagementService/Service1.asmx?WSDL 있습니다.
    3. 웹 참조 추가 대화 상자의 참조 추가 클릭하십시오.
  4. 두 개의 단추를 Form1에 추가하십시오. 서버의 저장소 문서 button1 Text 속성을 설정하십시오. 검색 문서 서버에서 button2 Text 속성을 설정하십시오.
  5. 두 번 클릭하여 단추에 대한 이벤트 처리기를 button1button2 기본 만들려면 클릭하십시오.
  6. 처리기에 다음 코드를 사용하여 바꾸기:
    string sFile = "<file path>";private void button1_Click(object sender, System.EventArgs e){	FileStream objfilestream = new FileStream(sFile,FileMode.Open,FileAccess.Read);	int len = (int)objfilestream.Length;	Byte[] mybytearray = new Byte[len];	objfilestream.Read(mybytearray,0,len);	localhost.Service1 myservice = new localhost.Service1();	myservice.SaveDocument(mybytearray,sFile.Remove(0,sFile.LastIndexOf("\\")+1));	objfilestream.Close();}private void button2_Click(object sender, System.EventArgs e){	MemoryStream objstreaminput = new MemoryStream();	FileStream objfilestream = new FileStream(sFile.Insert(sFile.LastIndexOf("."),"2"), FileMode.Create,FileAccess.ReadWrite);							localhost.Service1 myservice = new localhost.Service1();	int len = (int)myservice.GetDocumentLen(sFile.Remove(0,sFile.LastIndexOf("\\")+1)); 	Byte[] mybytearray = new Byte[len];	mybytearray = myservice.GetDocument(sFile.Remove(0,sFile.LastIndexOf("\\")+1));	objfilestream.Write(mybytearray,0,len);	objfilestream.Close();}					
    참고:sFile 변수를 서버로 업로드된 문서의 로컬 파일 경로를 포함해야 합니다. 문서를 다운로드할 때 동일한 폴더에 배치되고 값 2 파일 이름에 추가됩니다.

  7. 파일의 시작 부분에 다음 네임스페이스를 추가합니다:
    using System.IO;
  8. 솔루션 탐색기에서 클라이언트 프로젝트 항목을 마우스 오른쪽 단추로 클릭하십시오. 다음 시작 프로젝트로컨텍스트 메뉴에서 선택하십시오.
back to the top

It을 시도하십시오 부재

  1. 디버그 메뉴에서 시작 을 클릭하십시오. Form1이 나타납니다.
  2. 서버의 저장소 문서 단추를 클릭하십시오. SaveDocument 웹 메서드를 호출합니다. <root>이 웹 메서드는 로컬 문서에 있는 <루트> 저장합니다: 서버 폴더에 \DocumentDirectory\. 문서를 전송한 후 대상 폴더에 파일이 있는지 확인하십시오.
  3. 서버에서 문서 검색 단추를 클릭하십시오. GetDocument 웹 메서드를 호출합니다. <root>이 웹 메서드는 에서 <루트> 문서를 검색하는: 서버 폴더에 \DocumentDirectory\. 문서는 코드에 지정된 로컬 드라이브에 저장됩니다.
back to the top
참조
자세한 내용은 Microsoft Visual Studio .NET 설명서를 참조하십시오.

back to the top
ASP .NET 문서 웹 서비스의 이진

경고: 이 문서는 자동으로 번역되었습니다.

속성

문서 ID: 318425 - 마지막 검토: 12/15/2003 14:57:43 - 수정: 4.2

Microsoft ASP.NET 1.0, Microsoft Visual C# .NET 2002 Standard Edition

  • kbmt kbhowtomaster KB318425 KbMtko
피드백
r="var m=document.createElement('meta');m.name='ms.dqp0';m.content='true';document.getElementsByTagName('head')[0].appendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?">