猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
如果存在使用实体框架的其他插入逻辑,则更新行
是否有人对使用实体框架实现“如果存在更新行,否则插入行”逻辑的最有效方式提出建议?
拉风的咖菲猫
浏览 347
回答 3
3回答
ABOUTYOU
调用时会发生魔术,SaveChanges()并取决于电流EntityState。如果实体具有EntityState.Added,则将其添加到数据库中;如果实体具有,则将在数据库中EntityState.Modified对其进行更新。因此,您可以实现以下InsertOrUpdate()方法:public void InsertOrUpdate(Blog blog) { using (var context = new BloggingContext()) { context.Entry(blog).State = blog.BlogId == 0 ? EntityState.Added : EntityState.Modified; context.SaveChanges(); } }有关EntityState的更多信息如果您无法检查Id = 0以确定它是否是新实体,请检查Ladislav Mrnka的答案。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C#
typedef入门问题
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续