3

Я хочу переопределить значение по умолчанию nvarchar (4000) для одного из моих строковых столбцов для текстового типа данных в SQL Express. Я использую этот код.EF4 CTP5 - HasColumnType не работает

modelBuilder.Entity<Accommodation>() 
       .Property(p => p.Information) 
       .HasColumnType("text"); 

Но тип столбца остается как nvarchar?

я здесь спросил http://social.msdn.microsoft.com/Forums/en/adonetefx/thread/a1d84ea9-2f8e-42f0-bb83-ac9f68805d6d?prof=required

+2

Вы должны использовать _nvarchar (max) _ вместо _text_. Microsoft сохраняет текстовый тип данных в SQL Server 2005 и 2008 для обратной совместимости, но они рекомендуют использовать новый тип данных nvarchar (max). (http://msdn.microsoft.com/en-us/library/ms178158(v=SQL.100).aspx) –

+0

Отличная точка. Я изменил свой код на HasColumnType («varchar (max)»); и он отлично работает. спасибо – Daveo

ответ

1

Аааа я просто понял это, добавив, что беглое отображение не было достаточно, чтобы заставить таблицу dropAndCreate себя снова, даже если бы я поставил DropCreateDatabaseIfModelChanges.

Мне пришлось заставить его обновить таблицу вручную.

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

  • Нет связанных вопросов^_^