這是場景,假設我有一個OperationContract GetEmployeeDetails,它返回Employee類。WCF服務,相同合同,但某些數據成員特定於客戶端
class Employee
{
public int EmpId { get; set; }
public string EmpName { get; set; }
public string Salary{ get; set; }
}
現在我有兩個客戶說人力資源和經理。
當Manager客戶端創建代理時,不應公開salary屬性。 當HR客戶端創建代理時,應該暴露工資屬性。
我正在使用WCF服務,不能實現REST,沒有任何控制在客戶端。
無法使用接口來實現這一點,因爲實際的實體非常複雜,具有多個內部類。
請讓我知道,有什麼辦法可以實現這一點。
爲什麼不定義單獨的服務合同 – dreamweiver
1.服務合同級別沒有變化。 2.我可能有大約10個客戶,我需要限制DataMembers,在這種情況下,我將創建10個服務合同和更多的DataContracts。 –
我的意思是,你定義了單獨的服務合同,並在你的問題中提到了適當的規範。在客戶端使用特定的服務合同 – dreamweiver