English
 电子信箱
 加入收藏

  威盾防火墙 >> 新闻中心 >> 威盾新闻 >> Web服务代码隐藏文件

 

Web服务代码隐藏文件

威盾防火墙 2015-03-09

 

 Web服务代码隐藏文件

在代码隐藏文件中包含一个类,它是根据Web服务的文件名命名的。这个类有两个特性标签,WebService和WebServiceBinding。在该类中还有一个名为HelloWorld的模板方法,它将返回一个字符串。这个方法使用WebMethod特性修饰,该特性表示方法对于Web服务使用程序可用。

1.WebService特性

对于将要发布和执行的Web服务来说,WebService特性是可选的。可以使用WebService特性为Web服务指定不受公共语言运行库标识符规则限制的名称。

Web服务在成为公共之前,应该更改其默认的 XML 命名空间。每个 XML Web services 都需要唯一的XML命名空间来标识它,以便客户端应用程序能够将它与网络上的其他服务区分开来。http://tempuri.org/可用于正在开发中的Web服务,已发布的Web服务应该使用更具永久性的命名空间。例如,可以将公司的Internet域名作为XML命名空间的一部分。虽然很多Web服务的XML命名空间与URL很相似,但是,它们无须指向Web上的某一实际资源(Web服务的XML命名空间是URI)。对于使用ASP.NET创建的Web服务,可以使用Namespace属性更改默认的XML命名空间。

例18.1  将WebService特性的XML命名空间设置为http://www.microsoft.com。代码如下:

  1. using System;  
  2. using System.Web.Services;  
  3. [WebService(Namespace = "http:// www.microsoft. com /")]  
  4. public class Service : System.Web.Services.WebService  
  5. {  
  6.     public Service () {  
  7.         //如果使用设计的组件,请取消注释以下行   
  8.         //InitializeComponent();   
  9.     }  
  10.     [WebMethod]  
  11.     public string HelloWorld() {  
  12.         return "Hello World";  
  13.     }  

2.WebServiceBinding特性

按Web服务描述语言(WSDL)的定义,绑定类似于一个接口,原因是它定义一组具体的操作。每个Web services方法都是特定绑定中的一项操作。Web services方法是Web services的默认绑定的成员,或者是在应用于实现Web services的类的WebServiceBinding特性中指定绑定的成员。Web服务可以通过将多个WebServiceBinding特性应用于Web services来实现多个绑定。

3.WebMethod特性

Web services类包含一个或多个可在Web服务中公开的公共方法。这些Web services方法以WebMethod特性开头。为使用ASP.NET创建的Web服务中的某个方法添加此WebMethod特性后,就可以从远程Web客户端调用该方法。

WebMethod特性包括一些属性,这些属性可以用于设置特定Web方法的行为,语法如下:

  1. [WebMethod(PropertyName=value)] 

WebMethod特性提供以下属性:

BufferResponse属性

BufferResponse属性启用对Web services方法响应的缓冲。当设置为 true时,ASP.NET在将响应从服务器向客户端发送之前,对整个响应进行缓冲。当设置为false时,ASP.NET以16KB的块区缓冲响应。默认值为true。

CacheDuration属性

CacheDuration属性启用对Web services方法结果的缓存。ASP.NET将缓存每个唯一参数集的结果。该属性的值指定ASP.NET应该对结果进行多少秒的缓存处理。值为0时,则禁用对结果进行缓存。默认值为0。

Description属性

Description属性提供Web services方法的说明字符串。当在浏览器上测试Web服务时,该说明将显示在Web服务帮助页上。默认值为空字符串。

EnableSession属性

EnableSession属性设置为true,启用Web services方法的会话状态。一旦启用,Web services就可以从HttpContext.Current.Session中直接访问会话状态集合,如果它是从WebService基类继承的,则可以使用WebService.Session属性来访问会话状态集合。默认值为 false。

MessageName属性

Web服务中禁止使用方法重载。但是,可以通过使用MessageName属性消除由多个相同名称的方法造成的无法识别问题。

MessageName属性使Web服务能够唯一确定使用别名的重载方法。默认值是方法名称。当指定MessageName时,结果SOAP消息将反映该名称,而不是实际的方法名称。


相关内容: 最新内容:
什么是Web应用入侵[2015-03-09]
Web站点与Web项目支持[2015-03-09]
企业网站如何防护CC攻击[2015-03-09]
Web服务器如何避免CC攻击[2015-03-09]
Web服务器如何避免CC攻击 续[2015-03-09]
浅谈WEB服务器被CC攻击的症状以及防护[2015-03-09]