繁体   English   中英

EF Core 5 - 支持字段:找不到属性的指定字段

[英]EF Core 5 - Backing field: specified field could not be found for property

我正在尝试创建一个由 JSON 字符串组成的支持字段,然后该字符串由模型的属性访问并转换为 JObject:

public class StaticTable
    {
        public int StaticTableId { get; set; }
        private string _staticData { get; set; }

        public JObject StaticData
        {
            get => JsonConvert.DeserializeObject<JObject>(string.IsNullOrEmpty(_staticData) ? "{}" : _staticData);
            set => _staticData = value.ToString();
        }

        public static void RunFluent(ModelBuilder modelBuilder)
        {
            EntityTypeBuilder<StaticTable> entity = modelBuilder.Entity<StaticTable>();
            entity.Property(s => s.StaticData).HasField("_staticData");
        }
    }

创建迁移时,我收到以下错误: System.InvalidOperationException: The specified field '_staticData' could not be found for property 'StaticTable.StaticData'.

注意RunFluentDbContext.OnModelCreating执行

尝试使用私有变量而不是属性

private string _staticData;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM