首页 > 后端开发 > C++ > 如何首先忽略实体框架代码中的属性?

如何首先忽略实体框架代码中的属性?

Susan Sarandon
发布: 2025-01-13 16:18:42
原创
789 人浏览过

How to Ignore Properties in Entity Framework Code First?

实体框架 4.1 代码优先中的属性忽略

在实体框架 (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>
登录后复制

以上是如何首先忽略实体框架代码中的属性?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板