Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro ao executar aplicação no último exercício

Olá!

Ao executar a aplicação ocorre um erro na seguinte linha:

private static void RegisterServices(IKernel kernel)
        {
            int ordemExecucao = 1;
            kernel.Bind<ISession>().ToMethod(x => NHibernateHelper.AbreSession()).InRequestScope();
            kernel.BindFilter<TransactionFilter>(FilterScope.Global, ordemExecucao);
        }

Descrição do erro: TypeInitializationException não foi manipulada no código do usuário Ocorreu uma exceção do tipo "System.TypeInitializationException" em LojaWeb.dll, mas ela não foi manipulada no código do usuário

Informações adicionais: O inicializador de tipo de 'LojaWeb.Infra.NHibernateHelper' acionou uma exceção.

Já verifiquei os arquivos de mapeamento e estão corretos.

Vale ressaltar que na linha um erro era apresentado:

kernel.BindFilter<TransactionFilter>(FilterScope.Global, ordemExecucao);

Erro: Defines values that specifity the order in which filters run within the same filter type and filter order. Argumento 2: não é possível converter de "System.Web.Http.Filters.FilterScope" para "System.Web.Mvc.FilterScope"

Para resolver eu alterei a biblioteca de //using System.Web.Http.Filters; para //using System.Web.Mvc;

Alguém pode me ajudar? Quero continuar o curso!

1 resposta
solução!

Oi Igor, pelo que entendi da exception o principal motivo é que para o BindFilter você está passando a classe errada. Verfica se a classe FilterScope de fato é System.Web.Mvc.FilterScope

Se não adiantar, cola a exception inteira aqui para ficar mais claro o que está acontecendo.

Abraços e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software