目前,我正在使用ASP Identity与MVC 5.我想从AspNetUsers表中删除电话号码字段,但是当我使用add-migration命令时会导致以下错误。
您不能在属性'PhoneNumber'上使用Ignore方法 'Models.DbModel.User',因为此类型继承自该类型 'Microsoft.AspNet.Identity.EntityFramework.IdentityUser`
我已经在这里阅读了很多问题,但是他们都说你必须忽略基类中的属性,但是,在这种情况下我没有任何访问权限。
我该如何解决这个问题?
更新:当我在其工作的OnModelCreating方法中使用流畅的API时,我不想这样使用它,所以我将每个实体的config类分开。
以下是我的代码:
派生实体类
public class User: IdentityUser
{
public ICollection<Comment> Comments { get; set; }
}
配置类
public sealed class UserConfig : EntityTypeConfiguration<User>
{
public UserConfig()
{
ToTable("dbo", "Users");
Ignore(x => x.PhoneNumber);
Ignore(x => x.PhoneNumberConfirmed);
}
}
上下文类
public class WebsiteContext : IdentityDbContext
{
public WebsiteContext()
: base("XYZ")
{
}
public DbSet<Comment> Comment { get; set; }
//public DbSet<User> User { get; set; }
public static WebsiteContext Create()
{
return new WebsiteContext();
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Configurations.Add(new CommentConfig());
modelBuilder.Configurations.Add(new UserConfig());
}
}