我有一个IIS托管的WCF服务,我需要向两种客户端类型公开,外部(basicHttp legacy)和内部(wsHttp WCF)。对于外部客户端,我想强加一个更严格的限制配置。似乎限制配置如:
<serviceThrottling
maxConcurrentCalls="30"
maxConcurrentSessions="1000"
maxConcurrentInstances="30" />
只能作为服务行为应用,而不能作为端点行为应用。这意味着我需要创建两个单独的.svc文件,这些文件将解析为相同的.cs文件,如下所示:
<service behaviorConfiguration="x.xServiceBehavior">
<endpoint
address="~/xService.svc"
binding="wsHttpBinding"
contract="xService.IxService"/>
</service>
<service behaviorConfiguration="xService.ThrottledxServiceBehavior">
<endpoint
address="~/ThrottledxService.svc"
binding="basicHttpBinding"
contract="x.xService.IxService"/>
</service>
这是实现我所追求的目标的最佳途径还是有更好的方法?
由于
罗布。
答案 0 :(得分:0)
您完成它的方式看起来是正确的,以实现两个不同绑定的不同服务行为配置。有可能实现相同的效果,同时避免使用两个.svc文件,但上面的方法可以正常工作,所以为什么摇摇欲坠! :)