2011-05-26 162 views
1

我有兩個列表框,我將數據從一個列表框複製到另一個列表框。 移入第二個列表框的行需要保存到與記錄起源的表不同的表中。實體框架:表插入

所以,我有一個UserProfile表和整個公司的人員列表。我只選擇參與該項目的個人。

我需要將這些個人保存到只有該項目成員的人員的不同表中。我使用HttpRequest從第二個列表框中獲取新個人。然後我有一個使用Linq Query的方法,該方法通過UserProfile表中的UserId檢索行。

現在我有了UserProfile表所需的行,我該如何將這些個人插入到新表中?我已經有了需要保存到此表中的人員的IQueryable。如何將這些成員列表保存到asp.net mvc和實體框架中的這個新表中?謝謝

回答

0

是插入到您的表的相同類型的IQueryable類?我假設是,但如果沒有,你只需要先映射列。

這裏是我的插入類別記錄控制器代碼,我的表在實體框架命名lm_r_category。此代碼通過Http Post從Telerik ASP.MVC網格觸發,但可以根據需要觸發。

lm_r_category是我插入到表中的EF類。如果您正在使用不同的類,只需在執行AddObject之前創建lm_r_category的新實例並映射列值。正如你所看到的,在EF中插入非常簡單。

[HttpPost] 
[GridAction] 
public ActionResult GridInsert(lm_r_category category) 
{ 
    if (ModelState.IsValid) 
    { 
     // add instance of lm_r_category representing 
     // the new row. 
     db.lm_r_category.AddObject(category); 

     // save the changes 
     db.SaveChanges(); 
    } 
    return View(new GridModel(db.lm_r_category)); 
}