我将EF core 2.2与asp.net core 2一起使用。我有一个典型的crud应用程序,用户在其中更新一些实体信息,然后必须首先通过id选择实体,然后更新所有属性并保存实体。这引入了一个我希望避免的额外选择查询。对于以前的EF版本,我已经读过一个解决方案,就是将修改后的实体附加到dbContext,并手动标记更改后的属性,然后保存它,而不必先从db获取它。但是,对于EF核心,我找不到任何答案,我想知道如何最好地做到这一点。
答案 0 :(得分:0)
这应该给您一个想法(摘自EF6 documentation,但认为它对于EF核心同样适用)
var existingBlog = new Blog { BlogId = 1 };
using (var context = new BloggingContext())
{
context.Blogs.Attach(existingBlog);
// Make your changes...
context.SaveChanges();
}