本文分步介绍了如何使用该 System.Net.CookieContainer 类,应用程序中的 Web 服务使用会话或 Cookie 时。
尽管 Web 服务是本质上是无状态,您可以使用 Session 对象维护客户端应用程序和服务器应用程序之间的有状态通信。 若要启用 Web 客户端和 Web 服务之间的有状态通信,您可能会从客户端应用程序发送到 Web 服务的每个邮件使用 CookieContainer 对象。 您可能会占用状态启用客户端应用程序中有状态的 Web 服务。
创建 Web 服务应用程序
- 运行 Microsoft Visual Studio.NET。 创建新的 ASP.NET Web 服务项目,使用 Visual C#.NET。
情况默认,创建 Service 1.asmx。 - 将该项目命名 WebService1 。
- 在 生成 菜单上单击 生成解决方案 。
启用服务器上的会话支持
默认,处于关闭状态为每个 Web 服务方法的 ASP.NET 会话支持。 必须显式启用需要会话状态的每个 Web 服务方法的会话支持。 若要启用该会话支持,请将 EnableSession 属性添加到 WebMethod 属性。 要这样做,请按下列步骤操作:
- 在解决方案资源管理器右键单击 Service 1.asmx ,然后将现有代码替换为下面的代码:
using System; using System.ComponentModel; using System.Web; using System.Web.Services; namespace WebService1 { /// <summary> /// Summary description for Service1. /// </summary> public class Service1 : System.Web.Services.WebService { public Service1() { //CODEGEN: Call required by ASP.NET Web Services Designer. InitializeComponent(); } #region Component Designer generated code private void InitializeComponent() { } #endregion [WebMethod(EnableSession=true)] public string SetTime(string CurrentTime) {

本文详细阐述了如何通过使用System.Net.CookieContainer在无状态的Web服务中实现客户端和服务器间的有状态通信。通过创建ASP.NET Web服务和客户端应用程序,启用会话支持,以及利用CookieContainer来传递和获取会话对象,实现了状态维护。

1517

被折叠的 条评论
为什么被折叠?



