Отображение наследования для создания таблиц - PullRequest
0 голосов
/ 13 февраля 2020

У меня есть следующие классы: Transacao

using System;

namespace ProjetoModeloDDD.Entities
{
    public class Transacao
    {
        public int TransacaoId { get; set; }
        public int Quantidade { get; set; }
        public DateTime Data { get; set; }
        public string Tipo { get; set; }

        public int ProdutoId { get; set; }
        public virtual Produto Produto { get; set; }

        public decimal ValorTotal<T>(int quantidade, Produto produto)
            where T : class
        {
            Quantidade = quantidade;
            Produto = produto;

            return quantidade * produto.Valor;
        }

    }
}

Compra:

namespace ProjetoModeloDDD.Entities
{
    public class Compra : Transacao
    {
        public int TransacaoId { get; set; }
        public virtual Transacao Transacao { get; set; }

        public int FornecedorId { get; set; }
        public virtual Fornecedor Fornecedor { get; set; }
    }
}

Я хочу создать сопоставление, в котором я буду создавать только таблицу покупок в база данных, наследуя все атрибуты транзакции, включая ValorTotal. Я делаю конфигурацию ниже:

using ProjetoModeloDDD.Entities;
using System.Data.Entity.ModelConfiguration;


namespace ProjetoModeloDDD.Infra.Data.EntityConfig
{
    public class CompraConfiguration : EntityTypeConfiguration<Compra>
    {
        public CompraConfiguration()
        {
            HasKey(c => c.TransacaoId);


            HasRequired(c => c.Produto)
                .WithMany()
                .HasForeignKey(c => c.ProdutoId);

            HasRequired(c => c.Fornecedor)
                .WithMany()
                .HasForeignKey(c => c.FornecedorId);

        }

    }
}

Однако таким образом я даже не могу создать таблицу покупок. Может ли кто-нибудь дать мне руководство по этому поводу?

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