Làm th? nào đ?: G?i và nh?n tài li?u nh? phân b?ng cách s? d?ng m?t ASP.D?ch v? NET Web và Visual C#.NET

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 318425 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TÓM T?T

Bài vi?t t?ng bư?c này cho b?n th?y làm th? nào đ? xây d?ng m?t d?ch v? Web và m?t khách hàng d?ch v? Web g?i và nh?n tài li?u nh? phân b?ng cách s? d?ng Microsoft ASP.NET và Microsoft Visual C#.NET. B?n có th? s? d?ng ASP.NET và Visual C#.NET đ? xây d?ng m?t d?ch v? Web mà c? hai tài li?u nh? phân đ? ti?t ki?m m?t thư m?c trên máy ch? Web và l?y tài li?u nh? phân t? m?t thư m?c trên máy ch? Web. B?n có th? s? d?ng d?ch v? này như là m?t h? th?ng qu?n l? tài li?u đơn gi?n trên Web.

Xây d?ng các d?ch v? Web

  1. Trên các T?p tin Menu trong Microsoft Visual Studio.NET, nh?p M?i, sau đó b?m D? án.
  2. Trong Visual C# các d? án, ch?n các ASP.NET Web d?ch v?. Lo?i ho?c dán http://localhost/DocumentManagementService Đ?i v?i các V? trí, sau đó b?m Ok. Theo m?c đ?nh, Service1.asmx đư?c t?o ra và s? đư?c hi?n th? trong giao di?n thi?t k?.
  3. Trên các Xem tr?nh đơn, nh?p vào M? đ? hi?n th? ch? đ? xem m? cho Service1.asmx.
  4. Thêm m? WebMethods sau đ? các Service1 l?p:
    
    [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;	
    } 
    					

    LƯU ?: M? các tài li?u đ? ti?t ki?m <root>: \\DocumentDirectory\\ đư?ng d?n thư m?c trên máy ch?. Thay đ?i này đ? các thư m?c trên máy ch? Web c?a b?n nơi b?n mu?n lưu tài li?u.</root>

  5. Thêm không gian tên sau đây đ? b?t đ?u Service1.asmx:
    using System.IO;
  6. Ki?m tra d?ch v? Web:
    1. Trên các G? l?i tr?nh đơn, nh?p vào B?t đ?u đ? b?t đ?u d?ch v? Web. Đi?u này b?t đ?u tr?nh duy?t Web, và các trang tr? giúp mô t? d?ch v? s? xu?t hi?n.
    2. H?y ch?c ch?n r?ng các SaveDocument, GetDocument, và GetDocumentLen phương pháp xu?t hi?n.
    3. Đóng c?a s? tr?nh duy?t Web đ? ngăn ch?n g? l?i.

Xây d?ng m?t khách hàng cho các d?ch v? Web

  1. Trên các T?p tin Menu trong Visual Studio.NET, nh?p Thêm d? án, sau đó b?m D? án m?i.
  2. Trong các Visual C# các d? án danh sách, ch?n ?ng d?ng Windows, sau đó b?m Ok. Theo m?c đ?nh, Form1 đư?c t?o ra.
  3. Thêm m?t tài li?u tham kh?o Web d?ch v? Web, như sau:
    1. Trong gi?i pháp Explorer, b?m chu?t ph?i vào kho?n m?c d? án khách hàng. Sau ñoù choïn Thêm trang Web tham kh?o trên các B?i c?nh tr?nh đơn.
    2. Trong các Thêm trang Web tham kh?o h?p tho?i, g? URL vào t?p tin ngôn ng? mô t? d?ch v? Web (WSDL) cho các d?ch v? Web, và sau đó nh?n ENTER.

      LƯU ?: V? trí m?c đ?nh cho t?p tin WSDL là http://localhost/DocumentManagementService/Service1.asmx?WSDL.
    3. Trong các Thêm trang Web tham kh?o h?p tho?i h?p, b?m vào Thêm tài li?u tham kh?o.
  4. Thêm hai nút cho Form1. Đ?t các Văn b?n tài s?n c?a button1 đ? Tài li?u lưu tr? trên máy ch?. Đ?t các Văn b?n tài s?n c?a button2 đ? Truy xu?t tài li?u t? máy ch?.
  5. B?m đúp button1button2 đ? t?o m?c đ?nh b?m vào x? l? s? ki?n cho các nút.
  6. Thay th? các b? x? l? v?i đo?n m? sau:
    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();
    }
    					
    LƯU ?: Các sFile bi?n ph?i có đư?ng d?n t?p c?c b? cho m?t tài li?u s? đư?c t?i lên máy ch?. Khi tài li?u đư?c t?i v?, nó đư?c đ?t trong cùng m?t thư m?c, và m?t giá tr? c?a 2 đư?c g?n vào tên t?p.

  7. Thêm không gian tên sau đây t?i đ?u c?a t?p tin:
    using System.IO;
  8. Trong gi?i pháp Explorer, b?m chu?t ph?i vào kho?n m?c d? án khách hàng. Sau ñoù choïn Đ?t như d? án kh?i đ?ng trên các B?i c?nh tr?nh đơn.

Dùng th?

  1. Trên các G? l?i tr?nh đơn, nh?p vào B?t đ?u. Form1 xu?t hi?n.
  2. Nh?p vào nút có nh?n Tài li?u lưu tr? trên máy ch?. Đi?u này s? g?i cho các SaveDocument Web phương pháp. Phương pháp này Web lưu tài li?u đ?a phương trong <root>: \DocumentDirectory\ c?p trên h? ph?c v?. Sau khi b?n đ? chuy?n các tài li?u, ki?m ch?ng r?ng t?p t?n t?i trong c?p đích.</root>
  3. Nh?p vào nút có nh?n Truy xu?t tài li?u t? máy ch?. Đi?u này s? g?i cho các GetDocument Web phương pháp. Phương pháp Web này l?y tài li?u t? <root>: \DocumentDirectory\ c?p trên h? ph?c v?. Tài li?u s? đư?c lưu vào ? đ?a đ?a phương đư?c xác đ?nh trong m?.</root>

THAM KH?O

Đ? bi?t thêm chi ti?t, xem Microsoft Visual Studio.LƯ?I tài li?u hư?ng d?n.

Thu?c tính

ID c?a bài: 318425 - L?n xem xét sau cùng: 27 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
  • Microsoft ASP.NET 1.0
  • Microsoft Visual C# .NET 2002 Standard Edition
T? khóa: 
kbhowtomaster kbmt KB318425 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:318425

Cung cấp Phản hồi

 

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