有没有办法在WCF 4.0中通过配置自动为我的所有WCF服务全局执行此操作?
也就是说,我知道WCF 4.0公开了默认情况下将某些行为应用于所有托管端点的新配置技术,并且您不需要再按配置显式指定单个端点......但是我可以在配置说要使用BasicHttpBinding和WebHttpBinding自动托管所有服务(使用WebHttpBinding的/ web相对地址)?或者我是否仍需要为此使用自定义ServiceHostFactory?
感谢。
答案 0 :(得分:2)
请参阅Developer's Introduction to WCF 4了解WCF 4中的许多有趣内容。
其中一项新功能称为默认协议映射,这与WCF 4提供的默认端点相结合可能会解决您的问题。
默认端点意味着WCF 4将为您的服务类实现的每个协定(通常只有1个)以及配置中定义的每个基地(或ServiceHost
的代码)提供一个端点。
为了确保使用http://
自动公开webHttpBinding
端点,您还需要覆盖系统默认值(basicHttpBinding
) - 您可以执行此操作协议映射。
<configuration>
<system.serviceModel>
<protocolMapping>
<add scheme="http" binding="webHttpBinding"/>
</protocolMapping>
</system.serviceModel>
</configuration>