2011-11-08 46 views
0

我嘗試用WCF RIA + SilverLight的(實體框架+的DomainService) 上的SQL Server操作我有三個表:複雜類型&SilverLight&WCF RIA - 最簡單的方法?

用戶 idName ID用戶

usersStatus IDSTATUS ID用戶

usersJobs idJobs idUser

所以,我有三個實體在服務器/客戶端。 有沒有辦法讓一個對象同時獲得所有三個實體?

我想通過域服務端,由LINQ(而不是SQL Server)來做到這一點?

我試圖創建specail代理類,但感到麻煩創建一個實例。 代理類的字段在元數據中定義 - 所以我無法訪問它。

我想例如類似的東西:

public partial class proxyUser 
{ 
internal sealed class proxyUserMetadata 
    { 

     // Metadata classes are not meant to be instantiated. 
     private proxyUserMetadata() 
     { 
     } 

     public users user { get; set; } 

     public usersStatus status{ get; set; } 

     public EntityCollection <usersJobs> jobs { get; set; } 
    } 
} 

有沒有簡單的方法? 謝謝。

回答

1

您可以創建新類以包裝要返回給客戶端的實體。

public class CustomEntity 
{ 
    [Key] 
    public Users User { get; set; } 
    public UserStatus Status { get; set; } 
    public List<UserJobs> Jobs { get; set; } 
} 
+0

我會將userId作爲單獨的屬性移出,並將其作爲關鍵字。無論如何,似乎一切都與它無關。 – Danexxtone

+0

@Danexxtone我完全同意你的觀點,事實上,如果這個人使用ASPNetMembership會很容易,但我不知道設計決定,所以我把它留在那裏。 – Ekk

+0

這只是一個例子 – Monochromie