EF Core 映射实体类型配置 [英] EF Core Mapping EntityTypeConfiguration

查看:76
本文介绍了EF Core 映射实体类型配置的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在 EF6 中,我们通常可以使用这种方式来配置实体.

In EF6 we usually able to use this way to configure the Entity.

public class AccountMap : EntityTypeConfiguration<Account>
{
    public AccountMap()
    {
        ToTable("Account");
        HasKey(a => a.Id);

        Property(a => a.Username).HasMaxLength(50);
        Property(a => a.Email).HasMaxLength(255);
        Property(a => a.Name).HasMaxLength(255);
    }
}

我们在 EF Core 中可以怎么做,因为当我继承 EntityTypeConfiguration 时找不到该类.

How we can do in EF Core, since when the class I Inherit EntityTypeConfiguration that unable to find the class.

我从 GitHub 下载了 EF Core 原始源代码,我找不到它.有人可以帮忙吗?

I download the EF Core raw source code from the GitHub, I can't find it. Can someone help on this?

推荐答案

自 EF Core 2.0 起,就有 IEntityTypeConfiguration.你可以这样使用它:

Since EF Core 2.0 there is IEntityTypeConfiguration<TEntity>. You can use it like this:

class CustomerConfiguration : IEntityTypeConfiguration<Customer>
{
  public void Configure(EntityTypeBuilder<Customer> builder)
  {
     builder.HasKey(c => c.AlternateKey);
     builder.Property(c => c.Name).HasMaxLength(200);
   }
}

...
// OnModelCreating
builder.ApplyConfiguration(new CustomerConfiguration());

可以在 这里.

这篇关于EF Core 映射实体类型配置的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆