C# WCF由两个web服务公开的相同类型
我有两个公开相同类型的Web服务C# WCF由两个web服务公开的相同类型,c#,wcf,C#,Wcf,我有两个公开相同类型的Web服务 WebService1{ public MyData Retrive(int id){...} } WebService2{ public void Save(MyData x){...} } 我使用以下两种服务: var x=client1.Retrieve(3); client2.Save(x); 问题:x的类型为WebService1Client.MyData; 保存WebService2Client.MyData类型的请求x MyDa
WebService1{
public MyData Retrive(int id){...}
}
WebService2{
public void Save(MyData x){...}
}
我使用以下两种服务:
var x=client1.Retrieve(3);
client2.Save(x);
问题:x的类型为WebService1Client.MyData;
保存WebService2Client.MyData类型的请求x
MyData是相同的类型,由2个Web服务公开。我不能把两种方法放在同一份服务中。我该怎么办 在单独的类库中定义
MyData
,然后由两个web服务引用。还要在客户端中引用此共享库,并且在添加服务引用时,确保选中了重用现有类型的选项。然后,两个WCF服务的双方都将使用完全相同的类型。您可以在另一个程序集、类库中声明类MyData,并从web服务以及调用这些服务的客户端代码引用该程序集
WebService1{
public MyData Retrive(int id){...}
}
WebService2{
public void Save(MyData x){...}
}
您也可以考虑适当的继承,并将MyDATA作为基类的派生类,以防对您有帮助,那么您的服务只与基类一起使用。 事实上,WCF在这方面很有帮助,因为它引入了DataContract的概念,在本例中您应该正确使用它