EF 4.1试图设置计算列的值

时间:2011-11-17 14:42:34

标签: c# sql-server entity-framework-4

我正在使用EF 4.1和SQL Server 2008以及生成我的模型pocos的ADO.net DBContext生成器。我有一个包含2个计算列的数据库表,在我的edmx文件中,映射的属性都为StoreGenerationPattern选项设置了“Computed”。然而,当我插入一个实体如下

MyDbContext.Events.Add(oEvent);
MyDbContext.SaveChanges();

它生成一个SQL插入语句,尝试将空值插入到计算列中。

有人知道发生了什么事吗?

1 个答案:

答案 0 :(得分:1)

好的,我现在已经怀疑这一点,归结为我对EF如何工作的无知。我传递了我的DbContext一个普通的ADO.net连接字符串,它似乎将其翻转为代码优先模式。因此,我的edmx模型中的任何设置和配置都被忽略,并且它正在寻找模型类的属性。一旦我将其更改为使用包含对模型元数据文件的引用的EF字符串,它就可以工作。现在似乎显而易见,不知道我如何期望它神奇地了解模型元数据。