Entity Framework 4.3 Code First 无法创建 Datetime2?

7

我已经配置了我的数据库模型使用datetime2格式,而不是普通的datetime格式。当数据库生成时,所有日期列都是datetime类型,而不是datetime2类型。以下是我的列配置代码;

Property(a => a.LastOpened)
    .HasColumnOrder(++index)
    .HasColumnType("datetime2")
    .HasPrecision(0)
    .IsRequired();

我可以发誓,在EF早期版本(如4.1)中这个功能是有效的,但我不明白为什么现在不起作用。我正在连接到SQL Server 2008 R2...任何帮助将不胜感激!谢谢!
1个回答

8
ADO.NET团队博客已知问题 [...]
  • 不能在生成的数据库中使用所有硬编码列数据类型。如果您使用Column数据注释或HasColumnType Fluent API方法来硬编码列数据类型(即xml、money等),则在创建数据库时不会使用此数据类型。我们将在4.3.1补丁版中修复此问题。
更新 EF4.3.1补丁现已可用。NuGet上提供了EF4.3.1和EF5 Beta 1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接