ホームページ > バックエンド開発 > C++ > Entity Framework で生成されたクラスにデータ注釈を追加するにはどうすればよいですか?

Entity Framework で生成されたクラスにデータ注釈を追加するにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-04 12:58:41
オリジナル
813 人が閲覧しました

How Can I Add Data Annotations to Entity Framework Generated Classes?

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート