Tabla de rutas Asp.Net MVC y acciones del controlador
-
19-08-2019 - |
Pregunta
Estoy creando una especie de directorio con miembros y sus perfiles. Estoy usando el marco MVC en .net.
Tengo una vista que le permite buscar miembros según algunos criterios para que mi controlador tenga un resultado de acción Find (), luego otro que acepte el verbo post. Entonces, somesite.com/members/find muestra las herramientas de búsqueda, luego, una vez que se ha enviado el formulario, la misma URL muestra los resultados. Ahora quiero que el nombre del miembro se vincule a otro método de resultado de acción en el mismo controlador para mostrar su perfil y quiero que las URL sigan este patrón somesite.com/members/{username}.
¿Cómo creo un método de controlador que haga esto?
¿Hay algo más que eso?
¿Necesito mapear nuevas rutas en global.asax?
Gracias por la ayuda.
Solución
Primero cree su método de acción en el controlador de esta manera:
public ActionResult Profile(string userName)
{
// Do What you want with the userName
throw new System.NotImplementedException();
}
Luego cree una nueva ruta en su archivo global.asax para manejar el somesite.com/members/{username} como este:
routes.MapRoute(
"Profile",
"members/{username}",
new { controller = "Members", action = "Profile", userName = "" }
);
Eso es todo. No estoy seguro de cómo llama al controlador que alojará el método de acción. Asumí miembros.