EntityFramwowork 6 - сначала код - наследование TPT - другая схема для базового класса - PullRequest
0 голосов
/ 09 октября 2018

У меня есть следующая сущность и DBContext в одной сборке:

public class Notification
{
    public virtual string Title { get; set; }
    public virtual string Message { get; set; }
}

public class BaseModelContext : DbContext
{
    /// <inheritdoc />
    public BaseModelContext()
    {
    }

    /// <inheritdoc />
    public BaseModelContext(string connectionString, ContextMode mode) : base(connectionString, mode)
    {
    }

    /// <inheritdoc />
    public BaseModelContext(DbConnection connection, ContextMode mode) : base(connection, mode)
    {
    }

    public virtual DbSet<Notification> Notifications { get; set; }
}

Теперь в другой сборке я хочу извлечь из сущности уведомления:

public class TransportNotification : Notification
{
    public virtual int Position { get; set; }
}

public class TransportModelContext : MarvinDbContext
{
    /// <inheritdoc />
    public TransportModelContext()
    {
    }

    /// <inheritdoc />
    public TransportModelContext(string connectionString, ContextMode mode) : base(connectionString, mode)
    {
    }

    /// <inheritdoc />
    public TransportModelContext(DbConnection connection, ContextMode mode) : base(connection, mode)
    {
    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Entity<TransportNotification>().ToTable("TransportNotifications");

        base.OnModelCreating(modelBuilder);
    }

    public virtual DbSet<Notification> TransportNotifications { get; set; }
}

Моя цельчто у меня есть только одна таблица уведомлений и один или несколько производных уведомлений в других таблицах с различными DBContexts и схемами.Это возможно?И если так, кто-нибудь, как?В моих тестах таблицу уведомлений также создавал инструмент миграции (add -igration).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...