ホームページ > バックエンド開発 > C++ > Entity Framework コードのプロパティを最初に無視するにはどうすればよいですか?

Entity Framework コードのプロパティを最初に無視するにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-13 16:18:42
オリジナル
791 人が閲覧しました

How to Ignore Properties in Entity Framework Code First?

Entity Framework 4.1 Code First で無視されるプロパティ

Entity Framework (EF) 4.1 コードでは、まず、[NotMapped] プロパティ データ 注釈を使用して、データベース マッピングから特定のプロパティを除外できます。このアノテーションは、エンティティ クラス内の対応するプロパティに適用されます。

<code class="language-csharp">public class Customer
{
    public int CustomerID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    [NotMapped]
    public int Age { get; set; }
}</code>
ログイン後にコピー

[NotMapped] 属性は System.ComponentModel.DataAnnotations 名前空間の一部です。

また、Fluent API を使用して、DbContext クラスの OnModelCreating 関数をオーバーライドすることもできます。

<code class="language-csharp">protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
   modelBuilder.Entity<Customer>().Ignore(t => t.LastName);
   base.OnModelCreating(modelBuilder);
}</code>
ログイン後にコピー

元の質問で提案された EF バージョンは古いことに注意してください。 NuGet の時点での最新の安定バージョンは EF 4.3 です。

更新プログラム (2017 年 9 月): Asp.NET Core (2.0)

Asp.NET Core 2.0 以降では、前述の [NotMapped] 属性を使用できます。さらに、Fluent API は次のように使用できます:

<code class="language-csharp">public class SchoolContext : DbContext
{
    public SchoolContext(DbContextOptions<SchoolContext> options) : base(options)
    {
    }
    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Customer>().Ignore(t => t.FullName);
        base.OnModelCreating(modelBuilder);
    }
    public DbSet<Customer> Customers { get; set; }
}</code>
ログイン後にコピー

以上がEntity Framework コードのプロパティを最初に無視するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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