我所有的實體將具有以下屬性:替代界面W/RIA服務
Employee CreatedBy { get; set; }
Employee ModifiedBy { get; set; }
DateTime CreatedDate { get; set; }
DateTime ModifiedDate { get; set; }
這是一個非常大的應用程序和實體都在從不同的數據庫拉出,因此,在不同的.edmx
文件。
大多數情況下,這些將顯示在DataGrid
,我希望有一個工具提示顯示所有這些信息。 Employee
是每個數據庫中的視圖。
我通常會這樣做,將創建一個接口IEmployee
即每個名稱空間的Employee
實體將實現。然後,我會創建一個IToolTipEnabled
接口與上面列出的屬性,我會實現,無論需要。
然後,我將能夠在Silverlight端使用單個轉換器來獲取工具提示內容。事實上,我必須基本上爲每個實體類型創建一個新的轉換器,以便演繹正確。
有沒有一種很好的方法來做到這一點?
感謝您花時間閱讀本文,並感謝您能夠提供的任何幫助/見解!
編輯:ken2k的解決方案肯定是正確的,只需將接口的」 .shared.cs'文件,並在同一個共享文件(或其他共享文件),把類的部分類定義實現界面。這就是所需要的。
但可以用RIA服務這項工作?我不斷收到錯誤,然後我發現:http://forums.silverlight.net/t/173718.aspx/1這似乎說這是不可能的... – nosirrahcd 2012-08-09 18:34:54
@ user468341嘗試保存您的部分類(實現你的界面)放在名爲XXX.shared.cs的文件中(例如上面例子中的User.shared.cs)。 RIA服務使用此模式自動將C#代碼從服務器端共享到客戶端(代碼複製到客戶端代理中)。 – ken2k 2012-08-09 21:11:58
@ ken2k如果你這樣做,它幾乎可以工作;它似乎沒有通過電線將屬性發送回服務器端。我接近完成這項工作。 – DaleyKD 2012-08-21 15:01:26