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

기술 자료 번역 기술 자료 번역
기술 자료: 318425 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

요약

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

웹 서비스 빌드

  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. 디버깅을 중지하고 웹 브라우저 창을 닫습니다.

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

  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. 솔루션 탐색기에서 클라이언트 프로젝트 항목을 마우스 오른쪽 단추로 클릭하십시오. 다음 시작 프로젝트로컨텍스트 메뉴에서 선택하십시오.

It을 시도하십시오 부재

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

참조

자세한 내용은 Microsoft Visual Studio .NET 설명서를 참조하십시오.

속성

기술 자료: 318425 - 마지막 검토: 2003년 12월 15일 월요일 - 수정: 4.2
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft ASP.NET 1.0
  • Microsoft Visual C# .NET 2002 Standard Edition
키워드:?
kbmt kbhowtomaster KB318425 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com