快速加入

只要做上本站的友情链接,并在您站上点击一次,就免人工自动收录!并自动排在本站第一位。

本站已收录54382个网站。
站点标题:

WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇]-ASP.NET-第二电脑网

http://www.002pc.com/aspnet/2714.html

关键词:

WCF,Metadata,二十六,剖析,导出,扩展

页面描述:

通过《实现篇》对WSDL元素和终结点三要素的之间的匹配关系的介绍,我们知道了WSDL的Bidig元素来源于终结点的绑定对象,那么这些基于Bidig的元数据以及相应的策略断言是如何

蜘蛛模拟抓取:

WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇]-ASP.NET-第二电脑网学习电脑,计算机系统故障维护,电脑技术,电脑知识学习-就上第二电脑网网站首页电脑知识操作系统办公软件网络安全网络编程网站制作数据库CMS教程更多服务器网站运营网络营销JavaScriptpythongo语言PHP编程AJAX相关正则表达式ASP.NETASP编程JSP编程当前位置:首页>网络编程>ASP.NETWCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇]更新时间:2019-07-2423:04:05作者:第二电脑网来源:第二电脑网浏览数:我要评论通过《实现篇》对WSDL元素和终结点三要素的之间的匹配关系的介绍,我们知道了WSDL的Bidig元素来源于终结点的绑定对象,那么这些基于Bidig的元数据以及相应的策略断言是如何通过《实现篇》对WSDL元素和终结点三要素的之间的匹配关系的介绍,我们知道了WSDL的Binding元素来源于终结点的绑定对象,那么这些基于Binding的元数据以及相应的策略断言是如何被写入WSDL的呢?WSDL导出扩展(WSDLExportExtension)和策略导出扩展(PolicyExportExtension)就是为此设计的。一、WSDL导出扩展(WSDLExportExtension)终结点的绑定本质上就是相关的绑定元素(BindingElement)的有序组合(关于绑定的深入剖析,可以参考《WCF技术剖析(卷1)》第3章),所以基于绑定的WSDL导出扩展通过绑定元素的形式实现。对于需要向最终导出的WSDL添加于Binding相关的元数据的绑定元素,必须实现System.ServiceModel.Description.IWsdlExportExtension接口。此外,WSDL导出扩展并不限于被相应的绑定元素用于添加Binding相关的元数据,我们也可以采用终结点行为、契约行为和操作行为(服务行为不可以用于WSDL导出扩展)作为WSDL导出扩展实现在最终生成的WSDL中添加自定义的元数据。作为WSDL导出扩展的上述三种行为同样需要实现IWsdlExportExtension接口。下面的代码片断给出了IWsdlExportExtension接口的定义,该接口定义了两个方法:ExportContract和ExportEndpoint,分别于WsdlExporter的同名方法对应。publicinterfaceIWsdlExportExtension{voidExportContract(WsdlExporterexporter,WsdlContractConversionContextcontext);voidExportEndpoint(WsdlExporterexporter,WsdlEndpointConversionContextcontext);}从WsdlExporter的定义我们知道,无论是调用ExportContract还是ExportEndpoint方法,并不会直接将导出的元数据返回,最终导出的元数据是通过于另外一个额外的方法GetGeneratedMetadata获得的。实际上,当调用WsdlExporter的ExportContract或者ExportEndpoint方法的时候,会将导出的元数据暂存一个基于WsdlExporter对象的上下文(Context)之中。对于ExportContract方法,这个上下文对象是WsdlContractConversionContext,而对于ExportEndpoint方法则是WsdlEndpointConversionContext。在执行ExportContract或者ExportEndpoint方法的最后阶段,会遍历所有实现了IWsdlExportExtension接口的WSDL导出扩展元素(对于ExportContract方法,即所有实现了IWsdlExportExtension接口的3种行为对象;对于ExportEndpoint方法,包括实现了IWsdlExportExtension接口的行为对象和绑定元素),并将WsdlExporter对象本身和相应的上下文对象(WsdlContractConversionContext或者WsdlEndpointConversionContext)作为参数执行WSDL导出扩展的ExportContract方法或者ExportEndpoint方法,最终实现了对将定制的元数据写入最终的WSDL的目的。WSDL导出扩展并不包含对WS-Policy策略断言的导出,对此的实现定义在另外一个导出扩展中,即策略导出扩展。二、策略导出扩展(PolicyExportExtension)在《WCF技术剖析(卷1)》的第3章对绑定的介绍中,我们说绝大部分WS规范最终都通过绑定实现,或者说,WCF通过定义相应的绑定元素对某个WS规范提供支持。所以,终结点的绑定包含了很多基于相应WS规范的WS-Policy策略断言需要作为元数据导出到最终生成的WSDL中。比如对于WSHttpBinding,如果采用基于消息的安全模式,需要导出基于WS-Security相关的策略断言;如何开启了可靠会话(ReliableSession),需要导出基于WS-RM(WS-ReliableMessaging)相关的策略断言。在WCF元数据结构体系中,通过策略导出扩展实现对WS-Policy策略断言的导出。所有需要实现WS-Policy策略断言导出的绑定元素,必须实现System.ServiceModel.Description.IPolicyExportExtension接口。IPolicyExportExtension接口仅仅定义了如下一个方法成员:ExportPolicy。WWW.002pc.COM从WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇]分析来看,对WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇]的结果。publicinterfaceIPolicyExportExtension{voidExportPolicy(MetadataExporterexporter,PolicyConversionContextcontext);}当WsdlExporter执行ExportEndpoint方法的最后阶段,会创建PolicyConversionContext对象。遍历所有实现了IPolicyExportExtension接口的绑定元素,并将WsdlExporter对象本身和该PolicyConversionContext对象对象作为参数调用这些绑定元素的ExportPolicy方法。这些作为策略导出扩展的绑定元素将相应的基于WS-Policy策略的元数据导出到PolicyConversionContext对象中。待所有绑定元素执行完毕,再将暂存于PolicyConversionContext的策略元数据附加到上面提到的WsdlEndpointConversionContext对象上,那么最后导出的元数据就包含了相应的WS-Policy策略断言了。更多:WCF技术剖析之二十六:如何导出WCF服务的元数据(Metadata)[扩展篇]http://www.002pc.com/aspnet/2714.html你可能感兴趣的WCF,Metadata,二十六,剖析,导出,扩展PHP中将网页导出为Word文档的代码一般,有2种方法可以导出doc文档,一种是使用com,并且作为php的一个扩展库安装到服务器上,然后创建一个com,调用它的方法。mysql导入与导出1、备份数据库#mysqldump-u用户名-p数据库名导出文件名2、导出表结构#mysqldump-u用户名-p-d数据库名--add-drop-table表名>数据的导出与导入!数据导出数据导出主要有以下几种方法:使用selectintooutfilefilename语句使用mysqldump实用程序使用selectintooutfile"数据导入与导出mysqlcookbook00010数据导入与导出10.0引言在数据导入和导出遇到的问题?1.如何处理数据文件结构,当一个文件的格式不适合导入时,你需要将其转换成其他格式,这可能包括诸如改CodeIgniter扩展核心类实例详解本文实例讲述了CodeIgniter扩展核心类的方法。分享给大家供大家参考,具体如下:CI中对核心类、辅助类和函数的扩展是相当方便的,配置文件中指定了subclass_prefix扩展前缀,默认Sqoop导入导出命令集1、从hdfs上把数据导出到关系型数据库(mysql)sqoopexport--connectjdbc:mysql://MysqlIPAddress:3306/recommendation--username利用sqoop将hive数据导入导出数据到mysql利用sqoop将hive数据导入导出数据到mysql运行环境centos5.6hadoophivesqoop是让hadoop技术支持的clouder公司开发的一个在关系数据库和hdfs,Sqoop导出MySQL数据www.002pc.com认为此文章对《mysql删除部分数据Sqoop导出MySQL数据》说的很在理,www.002pc.com为你提供最佳的mysql语法,mysql技术。PHP扩展之XML操作(一)——SimpleXML一、简介及安装SimpleXML扩展提供了一个非常简单和易于使用的工具集,能将XML转换成一个带有一般属性选择器和数组迭代器的对象。此扩展需要 libxml PHP扩展。这表示需《PHP扩展学习系列》系列技术文章整理收藏《PHP扩展学习系列》系列技术文章整理收藏1PHP扩展之文本处理(二)——PCRE正则表达式语法10——后向引用http://www.lai18.com/content/321526.html2PHP扩展之文本处理1/212下一页尾页踩赏赞Tags:WCFMetadata二十六剖析导出扩展最新教程python里if条件或关系python获取html的phpPHP中ini_set和ini_getlinuxsvncommitmLinux下安装mysql5.5my.cnf在那Mysql高级查asp.net创建xml使用Aspose.Celpython获取当前月用python脚本监cxmlphpPHP构造函数与析构函数linux写管道积累linux常用的命mysql密码连接拒绝访问MySQLAuasp.net后台源码适用与firefoxA热门教程1pythonflask开机启动Python中的2python是服务器语言13个最常用的3python单行矩阵转置python将图4可以装linux的软件提高编程能力5window向linux传输文件vim学习6怎么在加载js时传入参数关于Type7关于BootStrapmodal在IOS9中不8learningnode.js关于jQuery参考9在SQL中获取一个长字符串中某个10python2进制高位补0Python中操最新电脑知识闲鱼电脑appseaport.exe进程分析电脑壁纸古风如何自动延长wind如何进入蓝屏的电脑初识Windows电脑系统32位换成62安装两个杀毒电脑待机时长Excel自动实现同分安卓4.2.2连接电脑局域网一台电脑桌改造怎样在Excel表格中自坦克堂电脑版ubuntu忘记登陆密码电脑桌宽度CCFL背光屏的优缺点抚州电脑培训fedora17下samba最新电脑系统win7笔记本鼠标驱动下载感受极致win7修复磁盘错误Windows7自建win8笔记本改ip地址win8系统网络win7如何删除其他用户Windows7bootcamp3.0win7win7右键管理打开9.7win8平板电脑推荐Windows8自win7报警0x80040707通过注册表建夏目友人帐win7主题Win7添加备xp连iphone上网Administrator账win7maya1010解决chm在WIN7下崩关于我们-广告合作-联系我们-免责声明-网站地图-投诉建议-在线投稿浙ICP备140365454号©CopyRight2008-2020002pc.COMIncAllRightsReserved.第二电脑网版权所有

如发现该网站包含病毒、色情、非法等不良内容,以及网站无法浏览、信息错误或垃圾内容等,请举报该网站。