在我的數據庫有3個表
CustomerType
CusID
事件類型
EventTypeID
CustomerEventType
CusID
EventTypeID
alt text http://img706.imageshack.us/img706/8806/inserevent.jpg無法添加已存在的實體。 (LINQ到SQL)
Dim db = new CustomerEventDataContext
Dim newEvent = new EventType
newEvent.EventTypeID = txtEventID.text
db.EventType.InsertOnSubmit(newEvent)
db.SubmitChanges()
'To select the last ID of event'
Dim lastEventID = (from e in db.EventType Select e.EventTypeID Order By EventTypeID Descending).first()
Dim chkbx As CheckBoxList = CType(form1.FindControl("CheckBoxList1"), CheckBoxList)
Dim newCustomerEventType = New CustomerEventType
Dim i As Integer
For i = 0 To chkbx.Items.Count - 1 Step i + 1
If (chkbx.Items(i).Selected) Then
newCustomerEventType.INTEVENTTYPEID = lastEventID
newCustomerEventType.INTSTUDENTTYPEID = chkbxStudentType.Items(i).Value
db.CustomerEventType.InsertOnSubmit(newCustomerEventType)
db.SubmitChanges()
End If
Next
當我從CheckBoxList1檢查CustomerEventType只有1單ID,它工作正常。它將數據插入ID爲1和CustomerEventType ID爲1的EventType。但是,當我檢查它們時,錯誤消息說
無法添加已存在的實體。
有什麼建議嗎? Thx提前。
Thx回覆Obalix!我想要的結果是 我想將新的EventTypeID 1插入到EventType表中,並在一個FORM中包含2個ID的CustomerType複選框列表。 所以,我點擊插入按鈕後,事件類型表和CustomerEventType表中的數據應該是: 事件類型 EventTypeID CustomerEventType EventTypeID = 1,1 CusID = 1,2 – Vicheanak 2010-03-09 08:30:21
HTTP://social.msdn .microsoft.com /論壇/ zh-CN/linqtosql /線程/ 242a3235-1d62-4c5d-822a-575be7f5f141 您可以檢查此帖以獲取清晰的說明。謝謝。 – Vicheanak 2010-03-09 08:47:26
該按鈕僅會被點擊一次。我只是試圖使數據庫和代碼易於閱讀,實際上是EventType表,EventTypeID和EventName是EventTypeID是主鍵自動遞增1以便它始終是唯一的。 EventTypeID文本框實際上假設爲EventName文本框。 CustomerType CheckboxList與來自CustomerTypes 1和2的2個ID綁定。 – Vicheanak 2010-03-09 08:54:29