none
Fluent API EntityTypeConfiguration RRS feed

  • Pergunta

  • Boa tarde galera


    Estou com uma projeto que usa FluentAPI e estou com uma certa dificuldade.

    Preciso inevitavelmente usar SHEMA para acesso as tabelas do banco, até aqui tudo bem, o detalhe é que se eu quiser mudar o SHEMA em determinado tempo (Base de Testes por exemplo) tenho que fazer a alteração em todas as variaveis declaradas....


    Eu queria declarara variável abaixo apenas 1 vez e usar nas classes que estão no mesmo arquivo .cs

    é possível ?

            string shemma = "PATEND";
    


    namespace Domain.Entity.Map
    {
    
    
        public class DadosDoCrmMap : EntityTypeConfiguration<DadosDoCrm>
        {
            string shemma = "PATEND";
            public DadosDoCrmMap()
            {
                /*O método ToTable define qual o nome que será dado a tabela no banco de dados*/
                this.ToTable("Dados_crm_View", shemma);
            }
    
        }
    
    
        public class ClietneMap : EntityTypeConfiguration<Clientes>
        {
            string shemma = "PATEND";
    
            public ClietneMap()
            {
                /*O método ToTable define qual o nome que será dado a tabela no banco de dados*/
                this.ToTable("Clientes", shemma);
            }
        }
    }
    



    Isco Sistemas José Luiz Borges

    quarta-feira, 3 de agosto de 2016 15:53

Respostas

  • Consegui...

    Para quem quiser segue:

    1. basta declarar o construtor com uma parametro de entrada

    public DadosDoCrmMap(string schema)

    2. Na classe OnModelCreating chamar passar uma string

    protected override void OnModelCreating(DbModelBuilder modelBuilder)

    {

      string shemma = "DBO";

      base.OnModelCreating(modelBuilder);

      modelBuilder.Configurations.Add( new DadosDoCrmMap(shemma));

    }


    Isco Sistemas José Luiz Borges

    • Marcado como Resposta Jose Luiz Borges quarta-feira, 3 de agosto de 2016 16:22
    quarta-feira, 3 de agosto de 2016 16:22