3

DbMigration と ColumnModel に関連する例やドキュメントを探しています。DBMigration Upメソッドで文字列プロパティの幅を指定したいだけですEg

AddColumn("Districts", "Code", c => c.String());

nvarchar(max) を作成します-たとえば、 maxlength(20) を指定したいと思います。これは EntityTypeConfiguration と統合されていますか、それとも手動で追加する必要がありますか

this.Property(t => t.Name).HasColumnName("Code").IsRequired().HasMaxLength(20);

MSDN ヘルプには例が示されておらず、ef4 ブログのウォークスルーでは基本のみが説明されています

4

2 に答える 2

4

AddColumn直接使用する場合は、次のように簡単に使用できます。

AddColumn("Districts", "Code", c => c.String(maxLength: 20));

で最大長を定義するとEntityTypeConfiguration(これは正しいアプローチです)、EF 移行によって処理されます。

于 2012-03-10T10:08:52.357 に答える
3

列の構成は、データ注釈として行う必要があります。文字列列に特定の幅を持たせるには、次を使用しStringLengthAttributeます。

[Required] // Makes column not null
[StringLength(20)] // Makes it a nvarchar(20) instead of nvarchar(max)
public string SomeString {get;set;}
于 2012-04-10T18:44:15.840 に答える