2011-05-26 45 views
0

我有一個像集合添加到一個視圖模型列表

public class MemberCommunicationType 
    { 
     public long person_id { get; set; } 
     public int comm_id { get; set; } 
     public someclass cls{ get; set; } 
    } 

    public class GetMemberColl 
    { 
     public MemberCommunicationType[] memberCommunication{ get; set; } 
    } 

視圖模型和我有一樣

var query = from p in data.GetMember 
      where (p.Client == client && p.Person_id == pid) 
      select p; 

查詢數據庫這個查詢返回兩個字段:long person_idint comm_id這是除了視圖模型還有一個字段外,視圖模型中也是如此:someclass cls

如何將查詢返回的結果添加到我的視圖模式L·

輸出應該是一個列表,其中包含memberCommunication的集合以及每個memberCommunication集合的一個空值cls集合。

回答

1

我想你想要做這樣的事情:

var query = from p in data.GetMember 
      where (p.Client == client && p.Person_id == pid) 
      select new MemberCommunicationType 
         { person_id = p.person_id, comm_id = p.comm_id} 
      ; 
var output = new GetMemberColl { memberCommunication = query.ToArray() }; 
+0

That works !! - 謝謝! – Gokul 2011-05-26 16:47:31

0

這會給你一個query這是IEnumerable<MemberCommunicationType>類型。

var query = from p in data.GetMember 
      where (p.Client == client && p.Person_id == pid) 
      select new MemberCommunicationType 
      { 
       person_id = p.Person_id, 
       comm_id = p.comm_id, 
       cls = null 
      }; 

然後,您可以將其與query.ToList()轉換爲List<T>

+0

嗨,我得到這個錯誤,因爲我包含cls = null,在查詢「無法創建一個常量值的類'類。只有原始類型(如Int32,字符串和Guid')在此上下文中受支持「 – Gokul 2011-05-26 16:46:44

+0

但丹尼爾的回答是有效的......謝謝你的回答。 – Gokul 2011-05-26 16:47:15

相關問題