我有一张桌子Products和另一张桌子ProductDetails:
CreateTable(
"dbo.Products",
c => new
{
Id = c.Guid(nullable: false),
// other fields here
// ....
//....
})
.PrimaryKey(t => t.Id)
.ForeignKey("dbo.ProductType", t => t.ProductTypeId, cascadeDelete: false)
.ForeignKey("dbo.AspNetUsers", t => t.UserId, cascadeDelete: false)
.Index(t => t.UserId)
.Index(t => t.ProductTypeId);
CreateTable(
"dbo.ProductDetails",
c => new
{
Id = c.Guid(nullable: false),
// other fields here
// ....
//....
})
.PrimaryKey(t => t.Id)
.ForeignKey("dbo.Products", t => t.ProductId, cascadeDelete: false)
.Index(t => t.ProyectoId)
如您所见,当我创建此表时,我禁用了cascadeDelete. 然而,经过一些开发,我意识到我需要删除一个产品。现在,我的问题是我不能通过做这样的事情来删除产品
var product = getProductById(Id);
_dbContext.Product.Remove(product);
_dbContext.SaveChanges();
如何级联删除我的产品表?我可以做类似的查询cascadeDelete吗?
_dbContext.Product.cascadeDelete... //this is not real code
如果不可能,我该如何更改我的表Products和ProductDetails.
慕姐4208626
相关分类