Perdón por la pregunta novata, pero como puede ver, el nombre del controlador aparece dos veces en la URL y solo funciona si está en la URL dos veces: URL
Así es como se ve mi controlador: Acción del controlador
Y aquí está mi punto de vista:
Sé que no es mi ruta porque si creo otra vista, la ruta funciona bien. Si solo escribohttp://localhost:50903/usuariosluego aparece una pantalla en blanco. Creo que devuelve nulo debido al bloque try-catch, pero cuando llama a la función, esto es a lo que va en UserDao:
Y este es el procedimiento almacenado al que llama:
Por favor ayuda me estoy volviendo loco
Respuesta1
¿Creaste un área en tu aplicación? Porque si creó un área y colocó la carpeta del controlador de usuario dentro de ella, puede obtener el nombre del controlador dos veces. Y como puedo ver tu URL, muestra que tu primer nombre de controladorusuariosestá en minúsculas porque generalmente cuando creamos un área la nombramos en minúsculas la mayor parte del tiempo.
El nombre del controlador de usuarios aparece dos veces en la URL porque incluye el nombre del área en la URL, como se muestra a continuación:
routes.MapRoute(
name: "user_route",
template: "{area:required}/{controller:required}/{action}/{id?}",
defaults: new { area = "users", controller = "Users"
});
eliminar área de la ruta.
routes.MapRoute(
name: "user_route",
template: "{controller:required}/{action}/{id?}",
defaults: new { controller = "Users", action = "Index"
});
Entonces, con esto, el nombre de su controlador aparecerá solo una vez en la URL.
Nota: Sólo es útil si ha creado un área en su aplicación. Si no creó el área, avíseme y encontraremos otra solución.
Espero que esto te ayudará.
Gracias.
Respuesta2
Descubrí lo que estaba mal. Tuve que cambiar el nombre de mi controlador para que funcionara correctamente. Es posible que mi aplicación se haya confundido porque el nombre del controlador era el mismo que el nombre de una vista.