wcf服务接口定义的前面需要注解啥(wcf序列化是在客户端还是服务端)

技术WCF服务元数据结构模式是怎样的这篇文章主要介绍“WCF服务元数据结构模式是怎样的”,在日常操作中,相信很多人在WCF服务元数据结构模式是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

本文主要介绍“WCF服务的元数据结构模式是什么”。在日常操作中,我相信很多人对WCF服务的元数据结构模式有疑问。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮助大家解答“WCF服务的元数据结构模式是什么”的疑惑!接下来,请和边肖一起学习!

经过WCF长时间的发展,很多用户对WCF服务元数据已经很熟悉了。在这里,我想表达一下我个人的理解,和大家讨论一下。获取WCF服务元数据,说到底,其实就是获取服务端点的信息,也就是服务的数据信息,包括地址、绑定、契约,也就是ABCs。少管所?在《Programming WCF Services》一书中,wy用生动的棒棒糖表达了终点的构成:

WCF服务元数据结构模式是怎样的

WCF服务元数据可能包含多个端点,每个端点相当于通信的入口,客户端和服务器通过端点交换信息,如下图所示:

WCF服务元数据结构模式是怎样的

因此,如果我们能够获得端点的详细信息,将有助于我们更好地分析服务的定义、内容和执行模式。服务发布自己的元数据有两种方案。一是提供基于HTTP-GET协议的元数据;另一种是元数据交换,它通常使用一个特殊的端点,称为元数据交换端点。像其他端点一样,元数据交换端点仍然包含地址、绑定和协定,但是使用的服务协定是WCF提供的接口IMetadataExchange。实际上,这两种发布元数据的方式代表了它使用了两种不同的标准协议,前者是HTTP/GET请求,后者是WS-MetadataExchange(MEX)。在WCF,这两种元数据交换模式由MetadataExchangeClientMode枚举类型表示:

WCF为端点定义了一个特殊的服务端点类,它是在system . service model . description命名空间中定义的。ServiceEndpoint类包含EndpointAddress、Binding、ContractDescription三种类型的属性,分别对应端点的Address、Binding、Contract,如下图所示:

WCF服务元数据结构模式是怎样的

要获取服务的端点,您可以通过抽象类MetadataImporter获取它,其定义如下:

publicatabstractclassmetadataimporter { publicatabstractcollectionimportallcontracts();publicatabstractserviceendpointcollectionimportallendpoints();//其他方法省略;}在类中,最重要的方法是ImportAllEndpoints(),它可以获取服务的所有端点,并返回一个ServiceEndpointCollection类型的对象。该类型是端点的集合。通过调用ServiceEndpointCollection的Find()方法或FindAll()方法,可以找到一个或多个满足条件的终结点。其定义如下:

public classserviceendpointcollection : collection { public serviceendpointfind(TypeContractType);publicationendpointfind(uri address);public collectionIndall(TypeContractType);//其他成员省略}我们可以通过合同类型或服务合同地址找到符合条件的端点。

至此,“WCF服务的元数据结构模式是什么”的研究结束,希望能解决大家的疑惑。理论和实践的结合可以帮助你学得更好。去试试吧!如果你想继续学习更多的相关知识,请继续关注网站,边肖会继续努力,给大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/146000.html

(0)

相关推荐

  • 美国服务器租用——游戏部署最佳选择USA-IDC

    技术美国服务器租用——游戏部署最佳选择USA-IDC无论您是想增强多人游戏体验还是创造一些额外收入,USA-IDC的美国服务器租用都是运营玩多人游戏(更不用说流内容)的最佳选择。美国服务器提供最高程度的设置控制,并保证有

    礼包 2021年12月24日
  • 使用chattr +i filename 防止文件误删

    技术使用chattr +i filename 防止文件误删 使用chattr +i filename 防止文件误删chattr +i 设置文件不能进行修改:即你不能删除它
    也不能给它重新命名,你不能对该

    礼包 2021年10月27日
  • softmax 分类

    技术softmax 分类 softmax 分类为什么softmax 里面要用交叉熵这个问题之前困扰我挺久的,但这两篇博文完美解答了我的疑惑。交叉熵、相对熵和负对数似然的理解 - 最大的梦想家的文章 -

    礼包 2021年11月9日
  • MySQL中行转列、列转行、连接字符串 concat、concat_ws、group_concat函数怎么用

    技术MySQL中行转列、列转行、连接字符串 concat、concat_ws、group_concat函数怎么用这篇文章主要介绍MySQL中行转列、列转行、连接字符串 concat、concat_ws、group_c

    攻略 2021年10月29日
  • 怎么理解DB2目录结构

    技术怎么理解DB2目录结构本篇文章为大家展示了怎么理解DB2目录结构,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。DB2目录结构:/instance/NODE0000/SQL00

    攻略 2021年11月23日
  • mybatis-plus判断数据是否存在(springboot mybatisplus使用教程)

    技术spring boot+mybatis-plus怎样使用shardingsphere分库分表spring boot+mybatis-plus怎样使用shardingsphere分库分表,相信很多没有经验的人对此束手无

    攻略 2021年12月20日