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)

相关推荐

  • hibernate如何实现逆向工程

    技术hibernate如何实现逆向工程这篇文章将为大家详细讲解有关hibernate如何实现逆向工程,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。导入hibernate 插件,这个自己

    攻略 2021年12月8日
  • 如何在Action类中获得HttpServletResponse对象

    技术如何在Action类中获得HttpServletResponse对象这篇文章将为大家详细讲解有关如何在Action类中获得HttpServletResponse对象,文章内容质量较高,因此小编分享给大家做个参考,希望

    攻略 2021年11月12日
  • CF450B Jzzhu and Sequences 题解

    技术CF450B Jzzhu and Sequences 题解 CF450B Jzzhu and Sequences 题解CF450B Jzzhu and Sequences 题解Content
    有一个

    礼包 2021年12月16日
  • css如何引入外部样式表

    技术css如何引入外部样式表这篇文章将为大家详细讲解有关css如何引入外部样式表,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 引入方法:1、使用link标

    攻略 2021年11月11日
  • bootstrap如何实现响应列表(bootstrap可以写动态效果吗)

    技术Bootstrap中如何实现加载效果这篇文章主要讲解了“Bootstrap中如何实现加载效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Bootstrap中如何实现

    攻略 2021年12月16日
  • 一个方法或变量是private属性的访问范围是什么

    技术一个方法或变量是private属性的访问范围是什么本篇文章给大家分享的是有关一个方法或变量是private属性的访问范围是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟

    攻略 2021年11月9日