I have a WCF service service scenario like this
namespace Company.BO.Contracts {
public interface ITypeService { }
public partial interface IType1Services : ITypeService
{
[OperationContract()]
Type1 GetType1(System.Int32 idValue);
[OperationContract()]
Type1 Save(Type1 myType1, System.Int32 changeUser);
}
public partial interface IType2Services : ITypeService
{
[OperationContract()]
Type2 GetType2(System.Int32 idValue);
[OperationContract()]
Type2 Save(Type2 type2, System.Int32 changeUser);
}
}
namespace Company.ContractFulfillment {
public class Type1Services : IType1Services
{
public MyType1 GetType1(System.Int32 idValue)
{
return new Type1();
}
}
public class Type2Services : IType2Services
{
public Type2 GetType2(System.Int32 idValue)
{
return new Type2();
}
}
}
When I expose the above code as WCF service, BizTalk is not able to distiguish between Type1.Save() and Type2.Save(). Is there a way without modifying the service, coz the service is part of a framework and requires more changes at other dependent places?
For clients other than BizTalk, the service access layer is wrapped into type library (type1, type2 etc) and clients access this type library as normal class library.