Entity Framework で生成されたクラスに注釈を付ける
Entity Framework はデータベース テーブルを C# クラスとして表すコードを生成できますが、これらのクラスには常に次のコードが含まれるわけではありません。データの注釈。データ検証やアノテーションに依存するその他の機能を必要とするアプリケーションでこれらのクラスを使用すると、問題が発生する可能性があります。
コード生成の問題の克服
アノテーションを付ける 1 つの方法Entity Framework で生成されたクラスは、メタデータを定義する 2 番目の部分クラスを作成します。部分クラスは同じ名前空間と名前を共有するため、元の生成されたコードを変更せずに追加のプロパティとメソッドを追加できます。これにより、今後のコード生成中に注釈が消去されなくなります。
必須フィールドの注釈の追加
質問に示されている例の続き:
public partial class ItemRequest { public int RequestId { get; set; } }
RequestId フィールドを必須にするには、2 番目の部分フィールドを作成しますclass:
using System.ComponentModel.DataAnnotations; namespace MvcApplication1.Models //make sure the namespace matches the first partial class { [MetadataType(typeof(ItemRequestMetaData))] public partial class ItemRequest { } public class ItemRequestMetaData { [Required] public int RequestId {get;set;} } }
この部分クラスには、RequestId プロパティの制約を定義する [Required] アノテーションが含まれています。このアノテーション付きクラスをアプリケーションで使用する場合、データ検証エンジンは必須のフィールド制約を強制します。
以上がEntity Framework で生成されたクラスにデータ注釈を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。