【发布时间】:2014-05-25 11:57:34
【问题描述】:
有人说有可能是“具体类(甚至可能实现多个服务合同)”
链接在这里WCF: Why is Contract on Endpoint and not on Service?
我知道一个服务只能有一个服务合同,但从未听说过单一服务类的多个服务合同实现。告诉我这可能吗?如果是的话,任何人都可以将我重定向到一个完整的示例代码,我可以从中看到具有单个服务类的多个服务合同实现。谢谢
【问题讨论】:
标签: wcf
有人说有可能是“具体类(甚至可能实现多个服务合同)”
链接在这里WCF: Why is Contract on Endpoint and not on Service?
我知道一个服务只能有一个服务合同,但从未听说过单一服务类的多个服务合同实现。告诉我这可能吗?如果是的话,任何人都可以将我重定向到一个完整的示例代码,我可以从中看到具有单个服务类的多个服务合同实现。谢谢
【问题讨论】:
标签: wcf
同意之前的回答,这就是实现两个合约的方式。 它可以用于安全目的,限制每个端点的责任区,为不同的端点共享资源。 点击链接,您可以找到详细说明:
Host multiple contracts in one WCF service
Run WCF ServiceHost with multiple contracts
WCF how to bind multiple service contracts?
来自 MSDN 的配置示例:
http://msdn.microsoft.com/en-us/library/ms751424(v=vs.110).aspx
【讨论】:
msdn.microsoft.com/en-us/library/ms731060(v=vs.110).aspx(附录部分)
是的,这是可能的,这里有一个来自优秀的Programming WCF services 书籍的例子:
[ServiceContract]
interface IMyContract
{
[OperationContract]
string MyMethod();
}
[ServiceContract]
interface IMyOtherContract
{
[OperationContract]
void MyOtherMethod();
}
class MyService : IMyContract,IMyOtherContract
{
public string MyMethod()
{...}
public void MyOtherMethod()
{...}
}
【讨论】: