【发布时间】:2015-12-22 22:37:05
【问题描述】:
我有一个已被标记为已计算的计算列,但它仍然向我抛出 SqlException:
The column "OPPORTUNITY_VALUE" cannot be modified because it is either a computed column or is the result of a UNION operator.
如何摆脱这个错误?
[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public long? OPPORTUNITY_VALUE { get; set; }
【问题讨论】:
-
究竟在做什么时抛出异常?您还没有向我们展示任何可执行代码。
-
好吧,我不需要写任何代码,实体框架为我处理一切。
-
异常不会自发发生。 当异常发生时你试图做什么?
-
当我更新我创建的项目时发生异常,但我没有设置 OPPORTUNITY_VALUE 值或类似的值,我只是修改了一些其他字段。发生的事情是,当我从数据库中获取它时,我正在重新使用同一个实例,所以我猜 OPPORTUNITY_VALUE 会自动填充数据库中的任何内容,因此当我尝试保存它时它会抱怨。但是,即使我将 OPPORTUNITY_VALUE 设置为 null,它仍然会抛出错误。
-
请编写创建此列的 sql 代码。
标签: c# entity-framework code-first