WebServices基础知识(MSDN整理)

原创 2007年10月09日 23:16:00

Windows Communication Foundation (WCF) 是 Microsoft 建立分布式系统的下一代平台。作为 .NET Framework 3.* 的一部分,它是设计用来巩固并扩展以前版本 Framework 的 API(即,ASP.NET Web Services、.NET Remoting, Enterprise Services (COM+) 和消息排队)。为更好地学习这个新东东,特作以下记录---回顾ASP.NET Web Services.
一:XML Web services 由两部分组成:XML Web services 入口点和实现 XML Web services 功能的代码。在 ASP.NET 中,.asmx 文件是用作 XML Web services 的可寻址入口点的文本文件。它引用预编译的程序集中的代码、代码隐藏文件或包含于 .asmx 文件本身的代码。
 三种方式事例:
 1.引用预编译的程序集中的代码: 

namespace Baosight.BPMS.DE.DP.BusinessLogic
...{   
    
/**//// ...   
    public class DeviceListServiceFacade :WebService, IDeviceListServiceFacade
    
...{
       [WebMethod]
        
public void UpdateDeviceChangeListHead(DeviceChangeListHead deviceChangeListHead)
        
...{
           
/**////...
        }
  
 ... 
    }

}

.asmx文件内容如下:

<%...@ WebService Language="C#" class="Baosight.BPMS.DE.DP.BusinessLogic.DeviceListServiceFacade" %>

 2.代码隐藏文件:
   默认情况下,当使用 ASP.NET Web 服务项目模板创建 XML Web services 时,Visual Studio 使用代码隐藏文件,例如在VS2005中,App_Code下将会出现:Service.cs。具体逻辑在此文件实现即可.
.asmx文件内容如下:

<%@ WebService Language="C#" CodeBehind="~/App_Code/Service.cs" Class="Service" %>

 3.包含于.asmx 文件本身:

<%...@ WebService Language="C#" Class="CoreCommonWebService" %>
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class CoreCommonWebService  : System.Web.Services.WebService {

    [WebMethod]
    public bool IsAutoFlow(string userId, string workflowName, string taskId, string stepPolicy)
    {
        return Baosight.BPMS.Core.Adapter.WorkflowHelper.IsAutoFlow(userId, workflowName, taskId, stepPolicy);
    }
}

二:使用 WebService 属性
   可以使用 WebService 属性指定命名空间(默认为“http://tempuri.org”)和 XML Web services 的说明文本。默认情况下,ASP.NET Web 服务项目模板不生成包含该属性的类。用逗号分隔多个属性。如下所示意

[System.Web.Services.WebService(Namespace="http://servername/xmlwebservices/"
   Description
="Some descriptive text could go here.")] 
public class Service1 : System.Web.Services.WebService
...
    
// Implementation code.
}

三:使用 WebMethod 属性
  WebMethod 属性 (Attribute) 提供以下属性 (Property):

BufferResponse :启用对 XML Web services 方法响应的缓冲。当设置为 true(默认设置)时,ASP.NET 在将响应向下发送到客户端之前对整个响应进行缓冲。缓冲非常有效,它通过最小化辅助进程和 IIS 进程之间的通信来帮助提高性能。当设置为 false 时,ASP.NET 以 16KB 的块区缓冲响应。通常,只有在不想将响应的全部内容一次缓冲到内存时,才将该属性 (Property) 设置为 false,除非另外指定,默认值为 true。

CacheDuration :启用对 XML Web services 方法结果的缓存。ASP.NET 将缓存每个唯一参数集的结果。该属性 (Property) 的值指定 ASP.NET 应该对结果进行多少秒的缓存处理。值为零,则禁用对结果进行缓存。除非另外指定,默认值为零。

Description :提供 XML Web services 方法的说明,该说明将显示在服务帮助页上。除非另外指定,默认值为空字符串。

EnableSession :启用 XML Web services 方法的会话状态。一旦启用,XML Web services 就可以从 HttpContext.Current.Session 中直接访问会话状态集合,或者,如果它是从 WebService 基类继承的,则可以使用 WebService.Session 属性来访问会话状态集合。除非另外指定,默认值为 false。

MessageName :使 XML Web services 能够唯一确定使用别名的重载方法。除非另外指定,默认值是方法名称。当指定 MessageName 时,结果 SOAP 消息将反映该名称,而不是实际的方法名称。

TransactionOption :使 XML Web services 方法可以作为事务的根对象参与。虽然可以将 TransactionOption 属性 (Property) 设置为 TransactionOption 枚举的任意值,但 XML Web services 方法仅有两个可能的行为:它不参与事务(Disabled、NotSupported、Supported)或它创建一个新事务(Required、RequiresNew)。除非另外指定,默认值为 TransactionOption.Disabled。

Spark基础知识学习分享

一、Spark基础知识梳理 1.Spark是什么? Spark是一个通用的并行计算框架,由UCBerkeley的AMP实验室开发。Spark基于map reduce 算法模式实现的分布式计算,...
  • lantian0802
  • lantian0802
  • 2014-03-29 18:25:06
  • 4271

java基础知识整理(java编程思想1-6章)

// 注释:源于现在已经快是大四了,到现在为止,学习编程也没多久,课堂在上自学,知识点实在是碎片化。加之自己   //又没有实际项目经验,现在都不知道自己学了些什么东西。于是开始整理所学知识碎片,也当...
  • hanpompy
  • hanpompy
  • 2012-05-30 17:32:44
  • 1002

整理:计算机一级考试:计算机基础知识(初稿)

第一部分 计算机基础知识 计算机是一门科学,也是一种自动、高速、精准地对信息进行存储、传送与加工的处理电子工具。 计算机的发展 电子计算机简介 项目 发明时间 名称 特点 意义...
  • u011432435
  • u011432435
  • 2013-11-24 14:27:58
  • 712

C#基础知识(MSDN整理)

一:C# 介绍p       C# 是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在 .NET Framework 上运行的各种安全、可靠的应用程序。 p      C# 作为一种面向...
  • jiangshaofen
  • jiangshaofen
  • 2007-10-12 23:51:00
  • 472

NET基础知识(MSDN整理)

一:NET介绍p      是一种面向网络、支持各种用户终端的开发平台环境。p      提供对下一代网络通信标准——可扩展标记语言(Extensible Markup Language,XML)的完...
  • jiangshaofen
  • jiangshaofen
  • 2007-10-12 23:49:00
  • 503

NET基础知识(MSDN整理)

一:NET介绍 p      是一种面向网络、支持各种用户终端的开发平台环境。p      提供对下一代网络通信标准——可扩展标记语言(Extensible Markup Language,XML)的...
  • kings1108
  • kings1108
  • 2009-12-07 17:04:00
  • 330

C#基础知识(MSDN整理)

  p       C# 是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在 .NET Framework 上运行的各种安全、可靠的应用程序。 p      C# 作为一种面向对象的语言...
  • kings1108
  • kings1108
  • 2009-12-07 16:40:00
  • 334

计算机网络基础知识整理(一)

1 IP地址的四大类型?IP地址根据网络号和主机号来分,分为A、B、C三类及特殊地址D、E。全0和全1的都保留不用。 A类:第一个字节为网络号,后三个字节为主机号。该类IP地址的最前面为”0”,地址...
  • mengdai1991
  • mengdai1991
  • 2015-07-04 14:39:48
  • 7653

canvas基础知识点(一)

canvas基础知识点(一)canvas说简单点就是一个标签,跟 标签很类似,但是没有src 属性, 标签只有两个属性:height和width ;说复杂点,canvas 可以绘制图形、绘制文本...
  • eidolons
  • eidolons
  • 2017-05-13 13:44:18
  • 172

1、java基础知识整理

Java的特性和优势: 简单性、面向对象、可移植性、高性能、分布式、动态性、多线程、安全性、健壮行。 Java开发环境搭建: 下载安装JDK,JDK包含JRE的超集、编译器、调试器等开发程序,新增...
  • GaryChaoMa
  • GaryChaoMa
  • 2015-03-20 22:48:28
  • 340
收藏助手
不良信息举报
您举报文章:WebServices基础知识(MSDN整理)
举报原因:
原因补充:

(最多只允许输入30个字)