Adicionando um parâmetro ao URL no ASP MVC
-
05-07-2019 - |
Pergunta
Eu preciso ter um parâmetro como parte do meu URL ASP MVC antes da Controlador e ação:
http://www.mydomain.com/Empresa1/Casa
ou
http://www.mydomain.com/Empresa1/Clientes/detalhe/1
(Idealmente, eu gostaria de ter isso como um subdomínio como este: http: //Empresa1.mydomain.com/clientes/detalhe/1 para que todas as respostas que resolvam este também são apreciadas)
Eu chamo essa conta de parâmetro. Tentei adicionar algo assim ao mapa de roteamento: "{conta}/{controller}/{action}/{id}", mas isso me dá um erro 404 ao tentar algo como http://www.mydomain.com/company1/home
Aqui estão os registringRoutes em global.asax:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute("TestRoute", "{account}/{controller}/{action}/{id}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
}
Existe algo de especial que eu tenho que fazer ao organizar as ações da pasta ou controlador de minhas visualizações?
Solução
Seu erro parece que você não está dando um padrão para ação nos padrões de sua rota.