3

SQL Expressのテキストデータ型に、文字列のいずれかのデフォルトnvarchar(4000)をオーバーライドしたいとします。私はこのコードを使用します。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

_text_の代わりに_nvarchar(max)_を使用することを検討する必要があります。 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

を尋ね

私は流暢なマッピングが、私はDropCreateDatabaseIfModelChangesを設定していたにもかかわらず、再び自分自身をdropAndCreateするテーブルを強制するのに十分ではなかった追加して、それを考え出しました。

テーブルを手動で更新する必要がありました。

関連する問題