在定义和寄宿WCF服务的时候会面临三个名称/命名空间,它们分别是ServiceContractAttribute、ServiceBehaviorAttribute和Binding的Name和Namespace属性,很对人对此不能很好地区分。

每个服务契约都有一个确定的名称,当在一个接口或类上应用了ServiceContractAttribute特性,默认的名称就是接口或类的名称。我们可以通过Name属性显式地指定需要的名称,这在某些场景中往往具有重要的作用。比如在客户端有一个通过接口的形式定义的服务契约,现有的很多客户端代码均依赖于这个接口,如果这个时候服务方的名称改变了,客户端仅须更新这个Name属性,从而避免修改接口的名称而造成对现有代码的影响。

class ServiceContractAttribute : Attribute
   2: {   
//其他成员    
string Name { get; set; }
string Namespace { get; set; }
   6: }

相关文章:

  • 2022-12-23
  • 2021-10-07
  • 2021-11-19
  • 2021-10-28
  • 2021-04-05
  • 2021-10-15
  • 2021-04-28
猜你喜欢
  • 2021-10-20
  • 2021-11-25
  • 2021-07-19
  • 2021-11-20
  • 2021-09-07
  • 2021-12-18
相关资源
相似解决方案