gpt4 book ai didi

ASP.net Core Entity Framework CurrentValues.SetValues() 当前最佳替代方案

转载 作者:行者123 更新时间:2023-12-02 17:13:13 25 4
gpt4 key购买 nike

使用 Entity Framework Core 的人可能知道,当前版本没有实体的 CurrentValues.SetValues() 实现。看起来对此的支持将在下一个版本 v1.1 中出现,因为 issue状态。在那之前,有人有一个适用于更新实体条目的解决方案吗?

对于上下文,过去 Entity Framework 中的 SetValues 函数采用一个实体并将其属性更新为作为参数传递的实体的值,即:

var updatedEntity = currentEntity.CurrentValues.SetValues(newValues);
_dbContext.SaveChanges();

我发现了一些使用 PropertyInfo 来创建通用更新函数的实现,但还没有找到任何看起来不错的干净解决方案。可能只需要接受我能得到的:)

附:我意识到此函数仅适用于不具有需要更新其他相关实体的复杂对象图的简单实体。我的用例很简单。现在必须手动映射属性真是太烦人了。

最佳答案

编辑:既然 EF Core v1.1.0 已经发布,CurrentValues.SetValues() 就可以工作了。

请参阅以下代码片段

var currentEntity = dbSetEntity.Find(id);
_dbContext.Entry(currentEntity).CurrentValues.SetValues(newValues);

关于ASP.net Core Entity Framework CurrentValues.SetValues() 当前最佳替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40597124/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com