首页 > 解决方案 > 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 Instance

标签: azureentity-framework-5.net-5ef-power-toolsazure-sql-server-managed-instance

解决方案


推荐阅读