none
DEFINIR UM ROTA RRS feed

  • Pergunta

  • Pessoal minha duvida e a seguinte.

     

    Tenho la um controller Admin, na view tenho la a pasta Admin tudo ok, tenho uma masterpage na qual tenho um link assim

     

     <a href="<%= "Index" %>">Inicio</a>

     

    isso funciona ele vai e pega o metodo Index que ta na pasta Admin.

    Dentro da pasta admin eu criei mais uma pasta Cadastro por exemplo, e dentro de cadastro eu tenho os arquivos que vou acessar.

    Ai na masterpage se eu fizer assim

     

     <a href="<%= "Admin/Cadastro/cadastro" %>">cadastro</a>

     

    ja da erro, diz q nao existe controller, ja tentei tirar ja tentei varias coisas, e nunca da certo.

    alguem sabe como proceder ?

    quinta-feira, 24 de junho de 2010 16:47

Respostas

  • acho que se no seu global.asax estiver com a rota default

     "Default",                                          
     "{controller}/{action}/{id}",

    ele nao vai reconhecer o caminho... vai intender que Cadastro é o controller e o outro cadastro é a action, 

    tenta só  <%= Html.ActionLink("Cadastro", "Cadastro", "Admin")%>

     

    =]

    sexta-feira, 25 de junho de 2010 00:58

Todas as Respostas

  • O ideal é você usar os métodos HTMLHelper do MVC para definir seus links:

    <%= Html.ActionLink("~/Admin/Cadastro/cadastro") %> por exemplo

     

    Desta maneira se você mudar suas rotas o MVC conseguirá encontrar os links para as actions automaticamente.

    quinta-feira, 24 de junho de 2010 17:17
    Moderador
  • acho que se no seu global.asax estiver com a rota default

     "Default",                                          
     "{controller}/{action}/{id}",

    ele nao vai reconhecer o caminho... vai intender que Cadastro é o controller e o outro cadastro é a action, 

    tenta só  <%= Html.ActionLink("Cadastro", "Cadastro", "Admin")%>

     

    =]

    sexta-feira, 25 de junho de 2010 00:58
  • Usando a sugestão dos amigos eu sugeria as seguintes mudanças:

     public static void RegisterRoutes ( RouteCollection routes )

    {

    routes . IgnoreRoute (

     

    "{resource}.axd/{*pathInfo}" );

     

     

    //routes . MapRoute (// "Default" , // Route name

     

     

    // "{controller}/{action}/{id}" , // URL with parameters

     

     

    // new { controller = "Home" , action = "Index" , id = UrlParameter . Optional } // Parameter defaults //);     ** Comente as linhas padrão do Global.asax

    routes.MapRoute (

     

    null ,"", new { controller = "Admin" , action = Index" } );

    routes.MapRoute (

     

    null ,"",new{controller="Admim",action="",id=""} );

    routes . MapRoute (

     

    null , "{controller}/{action}/{id}" );

    routes . MapRoute (

     

    null , "{controller}/{action}" );

    }

    terça-feira, 6 de julho de 2010 19:55