大佬教程收集整理的这篇文章主要介绍了DbSet 不包含 SaveChanges 的定义,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试删除数据网格中的选定行以及数据库中的同一行。
尽管 dbset 不包含 SaveChanges
的定义,但我收到一个错误。
linq 和 EF 相对较新。有人知道这可能来自哪里吗?
private voID deletebutton_Click(object sender,RoutedEventArgs E)
{
using (EFContext db = new EFContext())
{
int proID = (ProductDatagrID.SELEctedItem as Product).ProductID;
Result result = (from r in db.products where r.ProductID == proID SELEct r).SingLeorDefault();
db.Product.Remove(result);
db.Product.SaveChanges();
ProductDatagrID.Itemssource = db.Results.ToList();
}
}
您可以从 .Product
和 Remove()
方法中删除 SaveChanges()
。 Result result
将由实体框架跟踪,因此它会知道从哪个表中删除您的 record
,然后您可以调用 db.SaveChanges()
而不会出现任何错误,@R_197_10079@在 DbContext ({ {1}}):
EfContext
但是如果您想继续使用 using (EFContext db = new EFContext())
{
int proId = (ProductDatagrid.SELEctedItem as Product).ProductID;
Result result = (from r in db.products where r.ProductID == proId SELEct r).SingLeorDefault();
// .Product removed
db.Remove(result);
db.SaveChanges();
ProductDatagrid.Itemssource = db.Results.ToList();
}
的语法,那么您也可以将 db.Product
对象附加到 dbContext 而不需要像这样的查询:
Result
或者您可以将实体状态设置为已删除并通过这种方式将其删除:
using (EFContext db = new EFContext())
{
int proId = (ProductDatagrid.SELEctedItem as Product).ProductID;
Result result = new Result { ProductId = proID};
db.Product.Attach(result);
db.Product.Remove(result);
db.Product.SaveChanges();
ProductDatagrid.Itemssource = db.Results.ToList();
}
以上是大佬教程为你收集整理的DbSet 不包含 SaveChanges 的定义全部内容,希望文章能够帮你解决DbSet 不包含 SaveChanges 的定义所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。