2012-02-29 38 views
0

在sql和i中,我有一個多對多的關係,這與一個聯結表有關。它的名字是GroupContent。在OpenAceess中插入組和內容

當我嘗試插入一個新的組和內容Openaccess插入一個組和一個內容和劑量不插入任何記錄到我的聯結表。 這是我的代碼

using (Context orm = new Context()) 
     { 
      Group objGroup = new Group(); 
      objGroup.GroupName = "group 1"; 

      Content objContent = new Content(); 
      objContent.ContentDetail = "content 1"; 

      objGroup.Contents.Add(objContent); 
      orm.Add(objGroup); 
      orm.Add(objContent); 

      orm.SaveChanges(); 


     } 

我可以使用這個代碼與實體框架。

+0

首先 - 'orm.Add(內容)'可能是一個錯字。你是否在設計器中正確設置了m:n關聯?如果這是一個數據庫優先的方法,您是否已經在設計器中正確映射了連接表? – alwayslearning 2012-02-29 21:32:46

+0

我使用數據庫優先的方法,我正確地映射在sql server.when我使用開放訪問嚮導來創建模型,它不會在模型中創建我的連接表,它只顯示組和內容之間的多對多關係。 – 2012-03-01 07:36:36

+0

如果OpenAccess創建其他表,但不創建連接表,則映射中似乎存在一些不明確之處。你可以用Telerik打開支持票併發送你的rlinq文件。您的問題將以更快的速度得到解決 – alwayslearning 2012-03-01 07:40:47

回答

0

默認情況下,集合屬性在OpenAccess中不受管理(保留)。

您需要使用IsManaged標記導航成員。只需打開設計器,找到導航屬性(本例中爲Group類的Contents屬性)並通過屬性窗格,將IsManaged更改爲true。

+0

tnkx這就是我想要的。 – 2012-03-01 18:08:00