编程世界 - 计算机爱好者和编程爱好者的天堂!

编程世界

当前位置: 主页 > Dotnet > ASP.NET >

用ASP.NET开发Web服务的五则技巧(2)

时间:2008-11-29 18:26来源:编程世界 作者:无名 点击:
namespace ChattyService { public class ChattyService : WebService { [WebMethod] public bool Logon(string Username, string Password) { // 验证身份 return true; } } } 现在,username和password成了

  
  namespace ChattyService {
  public class ChattyService : WebService {
  [WebMethod]
  public bool Logon(string Username, string Password) {
  // 验证身份
  return true;
  }
  }
  }
  
  
  
     现在,username和password成了logon()方法的参数。修改之后的代码的优点在于,它把登录操作对服务器的三次调用降低到了一 次。另一方面,如果参数的个数太多,这个方法可能看起来很不像样。这时,可能要把方法的参数整理成几个复杂类型,例如,把username和 password两个参数封装到一个credential(证书)对象里面。
  四、在Web.Config中保存应用私有的数据
  
     用ASP.NET开发的Web服务能够发挥出.aspx应用的所有特长,包括用web.config文件保存应用私有数据的能力(例如,数据库连接 字符串、文件路径等)。用Web.config而不是global.asax文件的好处在于修改配置之后不必重新构造应用。
  
  
  
    五、避免使用ASP.NET会话状态
  
     .NET实现的会话状态管理功能解决了它的前辈ASP 3.0存在的许多问题,例如请求串行化等,但仍存在一些局限。应当认识到,.NET的会话状态管理功能不是专门为Web服务环境中的会话状态而设计,而是 为了在范围更广泛的ASP.NET应用中管理会话状态而设计,它依赖于HTTP Cookie(有一种通过改写URL实现的不需要Cookie的模式,但不适用于Web服务)。
  
    Cookie是HTTP 独有的。在Web上,所有的浏览器都支持HTTP,所以Cookie非常适合在Web应用中使用。但是,在Web服务中应用Cookie却把服务限定到了 HTTP协议上。另一方面,SOAP协议的运行是独立于传输协议的,因此如果把Web服务应用限制到HTTP协议上,应用的灵活性也受到了限制,一旦要通 过非HTTP的传输协议(例如SMTP)提供服务,事情会变得很麻烦。 (责任编辑:编程世界)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片