MVC 3实体框架 - 新数据库列未填充相应的属性

时间:2012-02-03 12:31:18

标签: sql-server asp.net-mvc entity-framework

我正在使用实体框架在MVC 3中创建一个Web应用程序,并且最近的规范更改需要我向其中一个数据库表添加一个新列(记录创建日期)。

我添加了新列并使用现有记录的值填充它,并在实体框架中更新了模型。当我使用新列查看对应于该表的对象时,我可以看到此新数据的属性:但是未检索该属性的数据。

只是为了澄清:

  • 我在“数据库”中的“订单”表中添加了“CreatedDate”列(日期时间)
  • 我使用现有记录的值填充此列,并将其设置为“not null”
  • 我在实体框架中更新了模型
  • 我的模型“Order”现在有一个不可为空的属性“CreatedDate”
  • 我使用LINQ填充订单列表(“来自DB.Orders中的o选择o”)
  • 对于我的列表中的任何条目,entry.CreatedDate返回“01/01/0001 00:00:00”,而不是我输入数据库的值。

出了什么问题?

1 个答案:

答案 0 :(得分:0)

EdmMetadata表?

数据库中是否有EdmMetadata表?据我所知,这个表包含一个由数据库结构签名的密钥。因此,如果未更改此值,则代码无法看到更改。好消息是不再需要这张表:

modelBuilder.Conventions.Remove<IncludeMetadataConvention>();