1
我有一堆自託管的WCF服務。一切工作正常,但我正在尋找方法來規範化/簡化結果配置。我儘可能簡化了它,但我仍然不高興。目前,我的配置看起來像這樣:簡化WCF配置
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="BindingConfiguration" ...>
...
</binding>
</netTcpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
...
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="ServiceBehavior" name="Name1">
<endpoint address="net.tcp://localhost:8080/name1" binding="netTcpBinding" bindingConfiguration="BindingConfiguration" contract="Contract1">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
</service>
<service behaviorConfiguration="ServiceBehavior" name="Name2">
<endpoint address="net.tcp://localhost:8080/name2" binding="netTcpBinding" bindingConfiguration="BindingConfiguration" contract="Contract2">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
</service>
...
</services>
</system.serviceModel>
總之,我有6個服務,所以它是重複的。理想情況下,我想:
- 要指定「localhost:8080」只有一次,所有服務之間共享,只有指定的差異(「名稱1」或「NAME2」)
- 只有指定的身份信息一次和所有服務定義之間共享
我的第一點,我知道base addresses,但只適用於服務級別,而不是跨單獨的服務。至於我的第二點,我嘗試將身份信息轉移到端點行爲中,但似乎並不支持。
有什麼我可以做的簡化這個配置?或者是我唯一的選擇切換到基於代碼的配置方法?
無賴 - 害怕這一點。不管怎麼說,還是要謝謝你。 – 2010-04-09 13:00:14