2

私は Entity Framework を初めて使用し、EF5 Code First を使用して新しい ASP.NET MVC プロジェクトに着手しようとしています。

私が理解しているように、ドメインモデルオブジェクト内のプロパティに対してデータ注釈を使用するか、Fluent API を使用して、プロパティのデータ型 (オブジェクトが作成されたときに DB 内)、サイズ、サイズを定義できます。 nullable など。

どちらを使用するかについて、一般的に推奨されるアプローチはありますか?

データ注釈を使用するときに、DB で作成されたときにそのプロパティのデータ型とサイズを指定できる方法がわかりませんでしたが、Fluent API を使用すると、次のことができるように見えます。

Property(g => g.ModelName).HasColumnType("varchar");
Property(g => g.ModelName).HasMaxLength(100);
Property(g => g.ModelName).IsRequired();

たとえば、データ注釈を使用する場合、デフォルトでは、すべての文字列プロパティに nvarchar(MAX) を使用しているように見えます。

データ注釈を使用して上記を行う方法はありますか? それは Fluent API と同程度の「微調整」を提供しますか?それとも、ドメイン モデルをそのままにして、この「微調整」をすべて分離して、各ドメイン モデル オブジェクトの Fluent API クラスを分離する必要がありますか?

4

1 に答える 1