本分步指南介绍如何使用 Microsoft ASP.NET 和 Microsoft Visual C# .NET 建立 Web 服务和 Web 服务客户端来发送和接收二进制文档。您可以使用 ASP.NET 和 Visual C# .NET 建立一项 Web 服务,用于将二进制文档保存到 Web 服务器上的文件夹和从 Web 服务器上的文件夹中检索二进制文档。可以使用此服务作为 Web 上的一个简单“文档管理系统”。
返回页首
建立 Web 服务
在 Microsoft Visual Studio .NET 中的文件菜单上,单击新建,然后单击项目。
在 Visual C# 项目中,选择 ASP.NET Web 服务。为位置键入或粘贴 http://localhost/DocumentManagementService,然后单击确定。默认情况下,会创建 Service1.asmx 并将其显示在设计视图中。
在视图菜单上,单击代码以显示 Service1.asmx 的代码视图。
将以下 WebMethods 代码添加到 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;
}
注意:以上代码将文档保存到服务器上的 <根目录>://DocumentDirectory// 目录路径中。将该路径更改为 Web 服务器上要在其中保存文档的文件夹。
将以下命名空间添加到 Service1.asmx 的开头:
using System.IO;
测试 Web 服务:
在调试菜单上,单击开始以启动该 Web 服务。这将启动 Web 浏览器,并显示包含服务说明的“帮助”页面。