J'ai une série d'éléments enfants d'une table, que je ne veux pas supprimer, puis ajouter les nouveaux.
Je me fiche de la performance, car c'est une opération peu fréquente.Comment supprimer puis ajouter des éléments enfants dans LINQ to SQL
Comment dois-je faire? Je l'ai essayé et Order.items.clear()
Order.Items.Remove(x)
mais aussi me donner des exceptions
Code simplifié:
Dim db As New MainDataDataContext
dim o as Order = (From Order In db.Orders Where Order.OrderID = OrderID).FirstOrDefault
''//this will return "An attempt was made to remove a
''//relationship between a Order and a OrderItem.
''//However, one of the relationship's foreign keys
''//(Order.OrderID) cannot be set to null." exception
o.Items.Clear()
''//and this will return "EntitySet was modified during enumeration." exception
For Each oItem As OrderItem In o.Items
o.items.Remove(oItem)
Next
For Each item As ListViewItem In listViewOrderItems.Items
If item.ItemType = ListViewItemType.DataItem Then
Dim oItem As New OrderItem
oItem.OrderID = OrderID
oItem.Product = CType(item.FindControl("txtProduct"), TextBox).Text
oItem.Quantity = CType(item.FindControl("txtQuantity"), TextBox).Text
Order.items.Add(oItem)
End If
Next
db.SubmitChanges()