Entity Framework Core 5 尝试为计算列插入值

问题描述

使用 Entity Framework 5 和 EF Core Power Tools(启用了生成 ef 5 代码的设置),我们得到类似于为每个计算列生成的以下代码

...HasComputedColumnsql("([LastName]+isnull(' '+[FirstName],''))",true);

完全正确。

不幸的是,尝试创建一个具有计算列的新实体并尝试保存我们从 ef core 5 中得到以下异常:

无法修改列“...”,因为它是计算列或 UNION 运算符的结果

当手动将 ValueGeneratedOnAddOrUpdate 附加到 HasComputedColumnsql 之后时:

 ...HasComputedColumnsql("([LastName]+isnull(' '+[FirstName],true).ValueGeneratedOnAddOrUpdate();

一切正常。

根据文档,这应该由 HasComputedColumnsql 自动调用

如何解决这个问题?

我们使用的是 Microsoft.EntityFrameworkCore v5.0.5 包,并且我们使用的是 Azure Managed sql Server 实例

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)