C# 是否从添加迁移中排除仅setter属性?

C# 是否从添加迁移中排除仅setter属性?,c#,entity-framework-core,entity-framework-migrations,C#,Entity Framework Core,Entity Framework Migrations,我有一个模型,该模型包含一个专用setter-only属性,我想告诉EF Core(2.1.0-preview2-final)在执行添加迁移时忽略该属性,例如: using System.ComponentModel.DataAnnotations.Schema; public class Model { public int Id { get; set; } public string Prop { get; set; } [NotMapped] privat

我有一个模型,该模型包含一个专用setter-only属性,我想告诉EF Core(2.1.0-preview2-final)在执行
添加迁移时忽略该属性,例如:

using System.ComponentModel.DataAnnotations.Schema;
public class Model
{
    public int Id { get; set; }
    public string Prop { get; set; }

    [NotMapped]
    private string PropPrivateSetter
    {
        set { Prop = value; }
    }
}
我的上下文使用新的
EntityTypeBuilder.HasData()
方法,如下所示:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<Model>(entity => entity.HasKey(e => new { e.Id }));
    // This line causes Add-Migration to fail.
    modelBuilder.Entity<Model>().HasData(new Model { Id = 1 });
}
HasData
调用之前,我尝试调用
Ignore
,但没有成功:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<Model>(entity => entity.HasKey(e => new { e.Id }));
    modelBuilder.Entity<Model>(entity => entity.Ignore("PropPrivateSetter"));
    // This line causes Add-Migration to fail.
    modelBuilder.Entity<Model>().HasData(new Model { Id = 1 });
}
模型创建时受保护的覆盖无效(ModelBuilder ModelBuilder)
{
Entity(Entity=>Entity.HasKey(e=>new{e.Id}));
modelBuilder.Entity(Entity=>Entity.Ignore(“PropPrivateSetter”);
//此行导致添加迁移失败。
modelBuilder.Entity().HasData(新模型{Id=1});
}

有没有一种方法可以做到这一点,而不必向我的属性添加
get{return null;}
?用于什么目的?它在2.1.0-preview2中正常工作(在将Id属性添加到模型类之后)。您是否明确地在模型中的某个地方添加了该属性?@Smit我已经根据您的评论增强了我的问题,我发现调用
HasData
会重现该问题。@viveknuna这与UI问题有关。@WhitneyKew-您在EF Core中遇到了一个错误。我已提交
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<Model>(entity => entity.HasKey(e => new { e.Id }));
    modelBuilder.Entity<Model>(entity => entity.Ignore("PropPrivateSetter"));
    // This line causes Add-Migration to fail.
    modelBuilder.Entity<Model>().HasData(new Model { Id = 1 });
}