WCF服务编程(7)——配置元数据交换终结点

一、引言

我们也可以通过配置元数据交换终结点的方式来启用元数据交换。标准的元数据交换终结点的配置结构如下:

   <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />

和普通的终结点类似,它也包含3个主要元素:契约(contract)、绑定(binding)和地址(address)。Address的配置和普通终结点的地址配置类似,可以配置为空、相对uri和带基地址的uri。Binding类型为固定的几个类型,常见的有mexHttpBinding、mexTcpBinding等等。Contract固定为IMetadataExchange。该契约接口已经由WCF自动为我们实现,但是我们在配置文件中必须为服务明确的指定该行为,否则启动服务时将会报错,如下所示:

        

          < behaviors >
             < serviceBehaviors >
                 < behavior  name = "mex" >
                     < serviceMetadata />
                     < serviceDebug  includeExceptionDetailInFaults = "false"  />
                 </ behavior >
             </ serviceBehaviors >
         </ behaviors >
         < services >
             < service  name = "WindowsFormsApplication11.Service1"  behaviorConfiguration = "mex" >
                 ...
                 < endpoint  address = "mex"  binding = "mexHttpBinding"  contract = "IMetadataExchange"  />
                 
                 < host >
                     < baseAddresses >
                         < add  baseAddress = "http://localhost:8732/Design_Time_Addresses/WindowsFormsApplication11/Service1/"  />
                         < add  baseAddress = "net.tcp://localhost:8001/Service1/"  />
                     </ baseAddresses >
                 </ host >
             </ service >

 

我们必须为服务指定定义了serviceMetadata标签的behavior,这样才是引入WCF自动实现的IMetadataExchange接口。否则,启动服务时将会报错。

二、添加默认的元数据终结点

 

点击查看全文

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值