我需要返回Employee类作为对clientA的响应,如下所示。如何使用单个WCF服务支持不同的客户端
[OperationContract]
public Employee GetEmployee(String id)
{
..
..
return emp;
}
public class Employee
{
public string Name;
public string phoneNo;
}
但这里的问题是clientB是要消耗我的服务,但需要员工的SSN。如果我将它添加到Employee类中,我将发送到clientA以及哪些不需要它。如何克服这种情况。如果我必须对自定义反序列化做任何事情,如果我要处理1000个属性,这不是问题吗?
哪个更好的解决方案?任何wcf架构的帮助也会更有帮助。
你的意思是说,我必须为每个服务合同创建两个不同的员工类别? –
是的。您尽可能严格地制定合同:只需要实际需要的参数,并且只返回实际需要的数据。这是一个更多的工作,但最终的结果是更清晰和更安全。 –