Desculpe pela pergunta noob, mas como você pode ver, o nome do controlador aparece duas vezes na URL e só funciona se estiver na URL duas vezes: URL
Aqui está a aparência do meu controlador: Ação do controlador
E aqui está a minha opinião:
Eu sei que não é meu roteamento porque se eu criar outra visualização, o roteamento funcionará bem. Se eu apenas digitarhttp://localhost:50903/usuáriosentão uma tela em branco aparece. Acho que está retornando nulo devido ao bloco try-catch, mas quando ele chama a função, é isso que acontece no UserDao:
E este é o procedimento armazenado que ele está chamando:
Por favor me ajude, estou enlouquecendo
Responder1
Você criou uma área em seu aplicativo? Porque se você criou uma área e colocou a pasta do controlador do usuário dentro dela, poderá obter o nome do controlador duas vezes. E como posso ver seu URL, isso mostra que seu primeiro nome de controladorUsuáriosestá em letras minúsculas porque geralmente quando criamos uma área, nós a nomeamos em letras minúsculas na maioria das vezes.
O nome do controlador de usuários aparece duas vezes no URL porque seu nome de área está incluído no URL, conforme mostrado abaixo:
routes.MapRoute(
name: "user_route",
template: "{area:required}/{controller:required}/{action}/{id?}",
defaults: new { area = "users", controller = "Users"
});
remova a área da rota.
routes.MapRoute(
name: "user_route",
template: "{controller:required}/{action}/{id?}",
defaults: new { controller = "Users", action = "Index"
});
Com isso, o nome do seu controlador aparecerá apenas uma vez na URL.
Observação: Só é útil se você tiver criado uma área em sua aplicação. Se você não criou a área, diga-me que encontraremos outra solução para isso.
Espero que isso ajude você.
Obrigado.
Responder2
Eu descobri o que estava errado. Tive que mudar o nome do meu controlador para que funcionasse corretamente. Meu aplicativo pode estar ficando confuso porque o nome do controlador era igual ao nome de uma visualização.