EF: использование идентификатора типа наносит на карту иерархию структуры предприятия

я - сторожевая башня, получая это сообщение об ошибке:

Детали Исключения: MySql. Данные. MySqlClient. MySqlException: Неизвестная колонка 'Extent1. RuleType' в 'cписке полей'

мое отображение:

public abstract class AlertRule
{
    private DateTime? _updateDateTime = DateTime.Now;

    [Key]
    public int Id { get; set; }

    public int TemplateId { get; set; }
    public virtual AlertRuleTemplate Template { get; set; }

    public string RuleType
    {
        get
        {
            if (Template == null)
                return null;
            return Template.Name;
        }
    }
}
public class AlertOutageRule:AlertRule
{
    public virtual List AlertRuleOutages { get; set; }
}
public class AlertMissingRule:AlertRule{}
public class AlertMetadataRule:AlertRule{}

        public DbSet AlertRules { get; set; }

        modelBuilder.Entity()
            .Map(m => m.Requires("RuleType").HasValue("NewsOutage"))
            .Map(m => m.Requires("RuleType").HasValue("NewsMetadata"))
            .Map(m => m.Requires("RuleType").HasValue("NewsMissing"));
            //.Property(m => m.TemplateId).HasColumnType("int");

        modelBuilder.Entity().ToTable("AlertRule");
2
nl ja de
У RuleType нет сеттера, таким образом, вы не можете нанести на карту его к постоянной колонке базы данных, которая необходима для EF, чтобы повторно осуществить правильный тип, когда вы восстанавливаете объекты.
добавлено автор Morten Mertner, источник
У RuleType нет сеттера, таким образом, вы не можете нанести на карту его к постоянной колонке базы данных, которая необходима для EF, чтобы повторно осуществить правильный тип, когда вы восстанавливаете объекты.
добавлено автор Morten Mertner, источник
Да; необходимо или добавить сеттера (и таким образом колонка) или удалить все ссылки на собственность в отображениях.
добавлено автор Morten Mertner, источник
Да; необходимо или добавить сеттера (и таким образом колонка) или удалить все ссылки на собственность в отображениях.
добавлено автор Morten Mertner, источник
Да; необходимо или добавить сеттера (и таким образом колонка) или удалить все ссылки на собственность в отображениях.
добавлено автор Morten Mertner, источник
У @MortenMertner вы имеете в виду эту собственность, должна быть колонка корреспонденции в базе данных?
добавлено автор Scott 混合理论, источник
У @MortenMertner вы имеете в виду эту собственность, должна быть колонка корреспонденции в базе данных?
добавлено автор Scott 混合理论, источник

1 ответы

общественность натягивают RuleType определенный, как прочитано только (никакой набор {..} ).

EF не нанесет на карту эту собственность с базой данных. см. Свою схему DB, она будет произведенный только 2 колонки (Id, TemplateId)

2
добавлено
Тогда вы can' t использование .Map (m => m. Требует ("RuleType") , потому что модель EF не признает эту собственность. попробуйте аннотацию Данных или MetaDataAttributes вместо этого.
добавлено автор aifarfa, источник
но я don' t нужны сеттер и don' t хотят его карта к базе данных. какие-либо предложения?
добавлено автор Scott 混合理论, источник
Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

DBA - русскоговорящее сообщество
DBA - русскоговорящее сообщество
1 345 участник(ов)

Общаемся и обсуждаем темы, посвященные DBA, PostgreSQL, Redis, MongoDB, MySQL, neo4j, riak и т.д. См. также: @devops_ru, @kubernetes_ru, @docker_ru, @nodejs_ru Рекомендуем сразу отключить уведомления, чтобы пребывание здесь было полезным и комфортным.

MySQL
MySQL
995 участник(ов)

The group is about MySQL. For code use hastebin.com. Admin: @smlkw

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot