2012-02-27 2 views
7

У меня есть моя модель базы данных, настроенная на использование формата datetime2 вместо просто datetime. Когда база данных создается, все столбцы дат являются датами, а не datetime2. Вот мой код конфигурации колонки;Entity Framework 4.3 Первый код не может создать Datetime2?

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

Я могу поклясться, что это работает в более ранней версии EF, такие как 4.1, но я не понимаю, почему он не работает. Я подключаюсь к SQL Server 2008 R2 ...

Любая помощь будет оценена!

Спасибо!

ответ

8

Из ADO.NET team blog:

Известные проблемы

[...]

  • Не все жестко запрограммированные типы данных столбцов почитаются в генерируемых базах данных. Если вы используете аннотацию данных столбца или метод HasColumnType Fluent API для жесткого кодирования типа данных столбца (т. Е. Xml, money, и т. Д.), Этот тип данных не используется при создании базы данных. Мы исправим исправление этой проблемы в выпуске исправления 4.3.1.

Update

EF4.3.1 патч теперь доступен. EF4.3.1 and EF5 Beta 1 Available on NuGet

Смежные вопросы