为 Windows Communication Foundation 文档定义了以下术语。
术语
| 术语 | Definition |
|---|---|
| address | 指定接收消息的位置。 它被指定为统一资源标识符(URI)。 URI 架构部分将用于访问地址的传输机制命名,例如 HTTP 和 TCP。 URI 的分层部分包含一个唯一位置,其格式依赖于传输机制。 |
| 应用程序终结点 | 由应用程序公开的终结点,对应于由应用程序实现的服务协定。 |
| 行为 | 行为是控制服务、终结点、特定作或客户端的各种运行时方面的组件。 行为按范围分组:常见行为全局影响所有终结点,服务行为仅影响与服务相关的方面,终结点行为仅影响终结点相关属性,作级别行为影响特定作。 |
| 绑定 | 定义用于与 WCF 服务通信的通信协议。 它构造了一组称为绑定元素的组件,这些组件堆栈位于另一个组件之上以创建通信基础结构。 请参阅终结点。 |
| 通道 | 绑定元素的具体实现。 绑定表示配置,通道是与该配置关联的实现。 因此,有一个与每个绑定元素关联的通道。 通道堆栈相互堆叠,以创建绑定的具体实现:通道堆栈。 |
| 基于声明的安全性 | 允许基于声明对受保护资源的授权访问。 |
| 客户端应用程序 | 客户端应用程序是一个程序,它与一个或多个终结点交换消息。 客户端应用程序首先创建 WCF 客户端的实例和调用 WCF 客户端的方法。 请务必注意,单个应用程序可以是客户端和服务。 |
| 编码 | 允许开发人员保留对服务或客户端的所有组件的严格控制,并且可以检查通过配置完成的任何设置,并根据需要由代码重写。 可以通过编码、配置或两者的组合来控制应用程序。 |
| 配置 | 配置的优点是允许开发人员(例如网络管理员)在编写代码后设置客户端和服务参数,而无需重新编译。 配置不仅使你可以设置终结点地址等值,还可以通过允许你添加终结点、绑定和行为来进一步控制。 可以通过配置、编码或两者的组合来控制应用程序。 |
| 协定 | 协定是对协定的特定类型的支持规范。 例如,服务协定是一组作的规范。 在 WCF 中,协定具有一个层次结构,该层次结构在 System.ServiceModel.Description 命名空间中的描述对象中镜像。 服务协定是 WCF 中最大的协定范围。 服务协定中的每个服务作都有一个作协定,该协定指定了作可以交换的消息(包括错误消息),以及哪个方向。 作中的每个消息都有消息协定、SOAP 消息信封结构的规范,每个消息协定都有一个数据协定,该协定指定消息中包含的数据结构。 |
| 数据协定 | 服务使用的数据类型必须在元数据中描述,以使其他人能够与服务进行互作。 数据类型的说明称为数据协定,这些类型可用于消息的任何部分,例如作为参数或返回类型。 如果服务仅使用简单类型,则无需显式使用数据协定。 |
| 声明性应用程序 | 一个应用程序,已足够描述在运行时创建,而无需运行命令性指令。 |
| 终结点 | 由用于与 WCF 服务通信的地址、绑定和协定组成。 |
| 终结点地址 | 使你能够为服务中的每个终结点创建唯一的终结点地址,或在某些条件下跨终结点共享地址。 |
| 错误协定 | 故障协定可以与服务作相关联,以表示可返回到调用方的错误。 作可以有零个或多个与其关联的故障。 这些错误是在编程模型中建模为异常的 SOAP 错误。 异常将转换为 SOAP 错误,然后可以发送到客户端。 |
| 承载 | 必须在某个进程中托管服务。 主机是控制服务的生存期的应用程序。 服务可以由现有托管进程自行托管或管理。 |
| 宿主进程 | 托管进程是一个旨在承载服务的应用程序。 其中包括 Internet Information Services (IIS)、Windows 激活服务(WAS)和 Windows 服务。 在这些托管方案中,主机控制服务的生存期。 例如,使用 IIS 可以设置包含服务程序集和配置文件的虚拟目录。 收到消息后,IIS 将启动服务并控制其生存期。 |
| 启动作 | 作为新会话的第一个作调用的作。 只有在调用了至少一个启动作后,才能调用非发起作。 |
| 实例化模型 | 服务具有实例化模型。 有三个实例模型:“single”,其中单个 CLR 对象服务所有客户端;”每个调用,“在其中创建了一个新的 CLR 对象来处理每个客户端调用;和“每个会话”,在其中创建了一组 CLR 对象,每个单独的会话一个。 实例模型的选择取决于应用程序要求和服务的预期使用模式。 |
| 消息 | 消息是一个自包含的数据单元,可能包含多个部分,包括正文和标头。 |
| 消息协定 | 消息协定描述消息的格式。 例如,它声明消息元素是否应进入标头与正文,应将安全级别应用于消息的哪些元素,等等。 |
| 消息安全模式 | 消息安全模式指定通过实现一个或多个安全规范来提供安全性。 每个消息都包含在传输过程中提供安全性的必要机制,并使接收方能够检测篡改和解密消息。 从这个意义上说,安全性封装在每个消息中,跨多个跃点提供端到端安全性。 由于安全信息成为消息的一部分,因此还可以将多种类型的凭据包含在消息中(这些凭据称为声明)。 此方法还具有使消息能够安全地通过任何传输(包括其出发地和目的地之间的多个传输)的优势。 此方法的缺点是采用加密机制的复杂性,从而导致性能影响。 |
| 元数据 | 服务的元数据描述了外部实体需要理解以与服务通信的服务的特征。 ServiceModel 元数据实用工具工具(Svcutil.exe)可以使用元数据来生成 WCF 客户端和客户端应用程序可用于与服务交互的随附配置。 服务公开的元数据包括 XML 架构文档,这些文档定义服务的数据协定,以及描述服务方法的 WSDL 文档。 启用后,WCF 会通过检查服务及其终结点来自动生成服务的元数据。 若要从服务发布元数据,必须显式启用元数据行为。 |
| 操作协定 | 作协定定义作的参数和返回类型。 创建定义服务协定的接口时,可以通过将 T:System.ServiceModel.OperationContractAttribute 属性应用于属于协定的每个方法定义来表示作协定。 作可以建模为获取单个消息并返回单个消息,也可以建模为采用一组类型并返回类型。 在后一种情况下,系统确定交换该作的消息的格式。 |
| 投影 | 网络上数据的表示形式。 例如,SOAP 投影以 SOAP 信封形式发送消息,Web 投影以 JSON 格式发送消息。 |
| 安全 | WCF 的安全性包括机密性(用于防止窃听的消息加密)、完整性(检测篡改消息的方法)、身份验证(服务器和客户端验证手段)和授权(对资源的访问控制)。 这些函数通过利用现有的安全机制(例如 TLS over HTTP(也称为 HTTPS)或实现一个或多个各种 WS-* 安全规范来提供。 |
| 自承载服务 | 自承载服务是在开发人员创建的进程应用程序中运行的。 开发人员控制其生存期、设置服务的属性、打开服务(将其设置为侦听模式),并关闭服务。 |
| 服务 | 公开一个或多个终结点的程序或进程,每个终结点都公开一个或多个作。 |
| 服务协定 | 服务协定将多个相关作关联到单个功能单元中。 协定可以定义服务级别设置,例如服务的命名空间、相应的回调协定和其他此类设置。 在大多数情况下,协定是通过使用所选编程语言创建接口并将 T:System.ServiceModel.ServiceContractAttribute 属性应用到接口来定义的。 实现接口的实际服务代码结果。 |
| 服务操作 | 服务作是在服务代码中定义的一个过程,用于实现作的功能。 此作以 WCF 客户端上的方法的形式向客户端公开。 该方法可以返回一个值,并可能采用可选数量的参数,或者不采用任何参数,并且不返回任何响应。 例如,充当“Hello”的作可用作客户端状态的通知,并开始一系列作。 |
| 系统提供的绑定 | WCF 包括许多系统提供的绑定。 这些是针对特定方案优化的绑定元素的集合。 例如,T:System.ServiceModel.WSHttpBinding 旨在实现各种 WS-* 规范的服务的互作性。 这些绑定仅提供可正确应用于特定方案的选项,从而节省时间。 如果其中一个绑定不符合你的要求,则可以创建自己的自定义绑定。 |
| 终止作 | 作为现有会话中的最后一条消息调用的作。 在默认情况下,WCF 在关闭服务关联的会话后回收服务对象及其上下文。 |
| 传输安全模式 | 可以通过以下三种模式之一提供安全性:传输模式、消息安全模式以及使用消息凭据模式的传输。 传输安全模式指定传输层机制(如 HTTPS)提供机密性、完整性和身份验证。 使用 HTTPS 之类的传输时,此模式具有在性能上高效的优势,并因其在 Internet 上的流行性而得到充分理解。 缺点是,这种安全在通信路径中的每个跃点上单独应用,使通信容易受到“中间人”攻击。 |
| 使用消息凭据安全模式传输 | 此模式使用传输层提供消息的机密性、身份验证和完整性,而每个消息可以包含消息接收方所需的多个凭据(声明)。 |
| 类型转换器 | CLR 类型可以与一个或多个 System.ComponentModel.TypeConverter 派生类型相关联,这些类型允许将 CLR 类型的实例转换为其他类型的实例以及从其他类型的实例转换。 类型转换器使用 System.ComponentModel.TypeConverterAttribute 属性与 CLR 类型相关联。 TypeConverterAttribute 可以直接在 CLR 类型或属性上指定。 在属性上指定的类型转换器始终优先于属性的 CLR 类型中指定的类型转换器。 |
| WCF 客户端 | WCF 客户端是客户端应用程序构造,它将服务作公开为方法(在所选的 .NET Framework 编程语言(如 Visual Basic 或 Visual C# 中)。 任何应用程序都可以托管 WCF 客户端,包括托管服务的应用程序。 因此,可以创建包含其他服务的 WCF 客户端的服务。 WCF 客户端可以使用 ServiceModel 元数据实用工具工具(Svcutil.exe)自动生成,并将其指向发布元数据的正在运行的服务。 |
| 工作流服务 | 工作流服务是作为工作流实现的 WCF 服务。 工作流包含发送和接收 WCF 消息的消息传送活动。 |
| WS-* | 在 WCF 中实现的一组不断增长的 Web 服务(WS)规范(如 WS-Security、WS-ReliableMessaging 等)的速记。 |
| XAML | eXtensible 应用程序标记语言 |
| XAML 架构 | 用于在 XAML 中定义自定义类型的标记架构。 |