Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Eduardo Giullyanny

Fluent Nhibernate erro de conexão

Recommended Posts

Bom dia amigos;

Sou novo com o Fluent NHibernate e criei está Sesseão Factory

public class SessionFactory
    {
        private static ISessionFactory session;
        public static ISessionFactory CriarSession()
        {
            string stringConn = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=pdv;Integrated Security=True;"
                + "Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";

            if (session != null)
                return session;

            IPersistenceConfigurer configDB = (MsSqlConfiguration.MsSql2012.ConnectionString(stringConn).ShowSql());

            var configMap = Fluently.Configure().Database(configDB)
                .Mappings(M => M.FluentMappings.AddFromAssembly(Assembly.GetExecutingAssembly()))
                .BuildSessionFactory();

            return session;
        }
        public static ISession AbrirSession()
        {
            return CriarSession().OpenSession();
        }
    }

ele acusa o erro no "var configMap" ele é o seguinte.:

An invalid or incomplete configuration was used while creating a SessionFactory. Check Potential Reasons collection, and InnerException for more detail.

estou procurando na internet, e revendo alguns vidios, mas não consegui resolver o problema ainda. Bom o resto de minhas classes são.:

public class ProdutoMap : ClassMap<Produto>
    {
        public ProdutoMap()
        {
            Table("PRODUTO");
            Id(p => p.Codigo);
            Map(p => p.Referencia);
            Map(p => p.CodBar);
            Map(p => p.TipoProduto);
            Map(p => p.NomeProduto);
            Map(p => p.ProdutoEcf);
            Map(p => p.CodigoFiscal);
            Map(p => p.TipoProduto);
            Map(p => p.PesoBruto);
            Map(p => p.PesoLiquido);
            Map(p => p.PromocaoAtivada);
            Map(p => p.PromocaoRedMargemLucro);
            Map(p => p.Margem01);
            Map(p => p.Preco01);
            Map(p => p.Desconto01);
            Map(p => p.Comissao01);
            Map(p => p.Margem01);
            Map(p => p.Preco01);
            Map(p => p.Desconto01);
            Map(p => p.Comissao01);
            Map(p => p.Margem02);
            Map(p => p.Preco02);
            Map(p => p.Desconto02);
            Map(p => p.Comissao02);
            Map(p => p.Margem03);
            Map(p => p.Preco03);
            Map(p => p.Desconto03);
            Map(p => p.Comissao03);
            Map(p => p.Margem04);
            Map(p => p.Preco04);
            Map(p => p.Desconto04);
            Map(p => p.Comissao04);
            Map(p => p.Margem05);
            Map(p => p.Preco05);
            Map(p => p.Desconto05);
            Map(p => p.Comissao05);
            Map(p => p.NCasaDecEnt);
            Map(p => p.NCasaDecSai);
            Map(p => p.Fracionado);
            Map(p => p.CaminhoImagem);
            Map(p => p.QtdAux);
        }
    }
public abstract class Repository<T>
    {
        public void Inserir(T entidade)
        {
            using (ISession session = SessionFactory.AbrirSession())
            {
                using (ITransaction transacao = session.BeginTransaction())
                {
                    try
                    {
                        session.Save(entidade);
                        transacao.Commit();
                    }
                    catch (Exception ex)
                    {
                        if (!transacao.WasCommitted)
                        {
                            transacao.Rollback();
                        }
                        throw new Exception("Erro ao inserir Cliente : " + ex.Message);
                    }
                }
            }
        }

        public void Alterar(T entidade)
        {
            using (ISession session = SessionFactory.AbrirSession())
            {
                using (ITransaction transacao = session.BeginTransaction())
                {
                    try
                    {
                        session.Update(entidade);
                        transacao.Commit();
                    }
                    catch (Exception ex)
                    {
                        if (!transacao.WasCommitted)
                        {
                            transacao.Rollback();
                        }
                        throw new Exception("Erro ao Alterar Cliente : " + ex.Message);
                    }
                }
            }
        }

        public void Excluir(T entidade)
        {
            using (ISession session = SessionFactory.AbrirSession())
            {
                using (ITransaction transacao = session.BeginTransaction())
                {
                    try
                    {
                        session.Delete(entidade);
                        transacao.Commit();
                    }
                    catch (Exception ex)
                    {
                        if (!transacao.WasCommitted)
                        {
                            transacao.Rollback();
                        }
                        throw new Exception("Erro ao Excluir Cliente : " + ex.Message);
                    }
                }
            }
        }

        public T RetornarPorId(int Id)
        {
            using (ISession session = SessionFactory.AbrirSession())
            {
                return session.Get<T>(Id);
            }
        }

        public IList<T> Consultar()
        {
            using (ISession session = SessionFactory.AbrirSession())
            {
                return (from c in session.Query<T>() select c).ToList();
            }
        }
    }
public class Produto
    {
        private double codigo;
        private string referencia;
        private string codBar;
        private string tipoProduto;
        private string nomeProduto;
        private string produtoEcf;
        private string unidadeVenda;
        private string codigoFiscal;
        private string tipoTribPadrao;
        private double pesoBruto;
        private double pesoLiquido;
        private char promocaoAtivada;
        private double promocaoRedMargemLucro;
        private double margem01;
        private double preco01;
        private double desconto01;
        private double comissao01;
        private double margem02;
        private double preco02;
        private double desconto02;
        private double comissao02;
        private double margem03;
        private double preco03;
        private double desconto03;
        private double comissao03;
        private double margem04;
        private double preco04;
        private double desconto04;
        private double comissao04;
        private double margem05;
        private double preco05;
        private double desconto05;
        private double comissao05;
        private char nCasaDecEnt;
        private char nCasaDecSai; // qtas cadas decimais do preco
        private char fracionado; // quando iqual a 1 vai ser fracionado 3 casas apos a virgula na qtd.
        private string caminhoImagem;
        private char inativo;
        private double qtdAux; // quantidade utilizada para auxiliar no desenvolvimento

        public virtual double Codigo
        {
            get
            {
                return codigo;
            }

            set
            {
                codigo = value;
            }
        }

        public virtual string Referencia
        {
            get
            {
                return referencia;
            }

            set
            {
                referencia = value;
            }
        }

        public virtual string CodBar
        {
            get
            {
                return codBar;
            }

            set
            {
                codBar = value;
            }
        }

        public virtual string TipoProduto
        {
            get
            {
                return tipoProduto;
            }

            set
            {
                tipoProduto = value;
            }
        }

        public virtual string NomeProduto
        {
            get
            {
                return nomeProduto;
            }

            set
            {
                nomeProduto = value;
            }
        }

        public virtual string ProdutoEcf
        {
            get
            {
                return produtoEcf;
            }

            set
            {
                produtoEcf = value;
            }
        }

        public virtual string UnidadeVenda
        {
            get
            {
                return unidadeVenda;
            }

            set
            {
                unidadeVenda = value;
            }
        }

        public virtual string CodigoFiscal
        {
            get
            {
                return codigoFiscal;
            }

            set
            {
                codigoFiscal = value;
            }
        }

        public virtual double PesoBruto
        {
            get
            {
                return pesoBruto;
            }

            set
            {
                pesoBruto = value;
            }
        }

        public virtual double PesoLiquido
        {
            get
            {
                return pesoLiquido;
            }

            set
            {
                pesoLiquido = value;
            }
        }

        public virtual char PromocaoAtivada
        {
            get
            {
                return promocaoAtivada;
            }

            set
            {
                promocaoAtivada = value;
            }
        }

        public virtual double PromocaoRedMargemLucro
        {
            get
            {
                return promocaoRedMargemLucro;
            }

            set
            {
                promocaoRedMargemLucro = value;
            }
        }

        public virtual double Margem01
        {
            get
            {
                return margem01;
            }

            set
            {
                margem01 = value;
            }
        }

        public virtual double Preco01
        {
            get
            {
                return preco01;
            }

            set
            {
                preco01 = value;
            }
        }

        public virtual double Desconto01
        {
            get
            {
                return desconto01;
            }

            set
            {
                desconto01 = value;
            }
        }

        public virtual double Comissao01
        {
            get
            {
                return comissao01;
            }

            set
            {
                comissao01 = value;
            }
        }

        public virtual double Margem02
        {
            get
            {
                return margem02;
            }

            set
            {
                margem02 = value;
            }
        }

        public virtual double Preco02
        {
            get
            {
                return preco02;
            }

            set
            {
                preco02 = value;
            }
        }

        public virtual double Desconto02
        {
            get
            {
                return desconto02;
            }

            set
            {
                desconto02 = value;
            }
        }

        public virtual double Comissao02
        {
            get
            {
                return comissao02;
            }

            set
            {
                comissao02 = value;
            }
        }

        public virtual double Margem03
        {
            get
            {
                return margem03;
            }

            set
            {
                margem03 = value;
            }
        }

        public virtual double Preco03
        {
            get
            {
                return preco03;
            }

            set
            {
                preco03 = value;
            }
        }

        public virtual double Desconto03
        {
            get
            {
                return desconto03;
            }

            set
            {
                desconto03 = value;
            }
        }

        public virtual double Comissao03
        {
            get
            {
                return comissao03;
            }

            set
            {
                comissao03 = value;
            }
        }

        public virtual double Margem04
        {
            get
            {
                return margem04;
            }

            set
            {
                margem04 = value;
            }
        }

        public virtual double Preco04
        {
            get
            {
                return preco04;
            }

            set
            {
                preco04 = value;
            }
        }

        public virtual double Desconto04
        {
            get
            {
                return desconto04;
            }

            set
            {
                desconto04 = value;
            }
        }

        public virtual double Comissao04
        {
            get
            {
                return comissao04;
            }

            set
            {
                comissao04 = value;
            }
        }

        public virtual double Margem05
        {
            get
            {
                return margem05;
            }

            set
            {
                margem05 = value;
            }
        }

        public virtual double Preco05
        {
            get
            {
                return preco05;
            }

            set
            {
                preco05 = value;
            }
        }

        public virtual double Desconto05
        {
            get
            {
                return desconto05;
            }

            set
            {
                desconto05 = value;
            }
        }

        public virtual double Comissao05
        {
            get
            {
                return comissao05;
            }

            set
            {
                comissao05 = value;
            }
        }

        public virtual char NCasaDecEnt
        {
            get
            {
                return nCasaDecEnt;
            }

            set
            {
                nCasaDecEnt = value;
            }
        }

        public virtual char NCasaDecSai
        {
            get
            {
                return nCasaDecSai;
            }

            set
            {
                nCasaDecSai = value;
            }
        }

        public virtual char Fracionado
        {
            get
            {
                return fracionado;
            }

            set
            {
                fracionado = value;
            }
        }

        public virtual string CaminhoImagem
        {
            get
            {
                return caminhoImagem;
            }

            set
            {
                caminhoImagem = value;
            }
        }

        public virtual char Inativo
        {
            get
            {
                return inativo;
            }

            set
            {
                inativo = value;
            }
        }

        public virtual double QtdAux
        {
            get
            {
                return qtdAux;
            }

            set
            {
                qtdAux = value;
            }
        }

        public virtual string TipoTribPadrao
        {
            get
            {
                return tipoTribPadrao;
            }

            set
            {
                tipoTribPadrao = value;
            }
        }
    }

aqui estou tentando executar

Produto p = new Produto
            {
                Codigo = 2,
                NomeProduto = "teste"
            };

            produtosDal.Inserir(p);

o banco.:

CREATE TABLE [dbo].[Produto] (
    [Codigo]                 FLOAT (53)    NOT NULL,
    [Referencia]             VARCHAR (100) NULL,
    [CodBar]                 VARCHAR (20)  NULL,
    [TipoProduto]            VARCHAR (10)  NULL,
    [NomeProduto]            VARCHAR (150) NULL,
    [ProdutoEcf]             VARCHAR (50)  NULL,
    [UnidadeVenda]           VARCHAR (10)  NULL,
    [CodigoFiscal]           VARCHAR (20)  NULL,
    [TipoTribPadrao]         VARCHAR (10)  NULL,
    [PesoBruto]              FLOAT (53)    NULL,
    [PesoLiquido]            FLOAT (53)    NULL,
    [PromocaoAtivada]        CHAR (1)      NULL,
    [PromocaoRedMargemLucro] FLOAT (53)    NULL,
    [Margem01]               FLOAT (53)    NULL,
    [Preco01]                FLOAT (53)    NULL,
    [Desconto01]             FLOAT (53)    NULL,
    [Comissao01]             FLOAT (53)    NULL,
    [Margem02]               FLOAT (53)    NULL,
    [Preco02]                FLOAT (53)    NULL,
    [Desconto02]             FLOAT (53)    NULL,
    [Comissao02]             FLOAT (53)    NULL,
    [Margem03]               FLOAT (53)    NULL,
    [Preco03]                FLOAT (53)    NULL,
    [Desconto03]             FLOAT (53)    NULL,
    [Comissao03]             FLOAT (53)    NULL,
    [Margem04]               FLOAT (53)    NULL,
    [Preco04]                FLOAT (53)    NULL,
    [Desconto04]             FLOAT (53)    NULL,
    [Comissao04]             FLOAT (53)    NULL,
    [Margem05]               FLOAT (53)    NULL,
    [Preco05]                FLOAT (53)    NULL,
    [Desconto05]             FLOAT (53)    NULL,
    [Comissao05]             FLOAT (53)    NULL,
    [NCasaDecEnt]            CHAR (1)      NULL,
    [NCasaDecSai]            CHAR (1)      NULL,
    [Fracionado]             CHAR (1)      NULL,
    [CaminhoImagem]          TEXT          NULL,
    [Inativo]                CHAR (1)      NULL
);

d24cd171e05148c5b91da198b7ee42be.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.