Кто-нибудь знает, как удалить объект и все связанные с ним объекты.
Например, у меня есть таблицы Product, Category, ProductCategory и productDetails, productCategory объединяет таблицы Product и Category.
Я прочитал с http://msdn.microsoft.com/en-us/library/bb738580.aspx, что
Удаление родительского объекта также удаляет все дочерние объекты в
стесненные отношения. Этот результат аналогичен включению
CascadeDelete
свойство в ассоциации для отношений.
Я использую этот код:
Product productObj = this.ObjectContext.Product.Where(p => p.ProductID.Equals(productID)).First();
if (!productObj.ProductCategory.IsLoaded)
productObj.ProductCategory.Load();
if (!productObj.ProductDetails.IsLoaded)
productObj.ProductDetails.Load();
//my own methods.
base.Delete(productObj);
base.SaveAllObjectChanges();
Но я получаю сообщение об ошибке ObjectContext.SaveChanges();
То есть,
Отношение добавляется или удаляется из AssociationSet
'FK_ProductCategory_Product'. С ограничениями по количеству элементов, соответствующая «ProductCategory» также должна быть добавлена или удалена.