Noções básicas de roteamento MVC3
Eu estou aprendendo roteamento MVC. Espero que minha pergunta não pareça boba, e por favor ajude :)
<code>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 ); </code>
A referência do Msdn diz que é necessário um String, String, Object, então eu tento fazer uma pequena alteração (adicionei um "my" na frente de tudo apenas para modificar os nomes e ver se funciona):
<code> public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{myresource}.axd/{*mypathInfo}"); routes.MapRoute( "myDefault", // Route name "{mycontroller}/{myaction}/{myid}", // URL with parameters new { mycontroller = "Home", myaction = "Index", myid = UrlParameter.Optional } // Parameter defaults ); </code>
Não funciona mais. Qual é o formato dessas cadeias em chaves "{}" e os formatos de valor do objeto anônimo.
{controller} / {action} / {id} / Produtos / apresentação / bebidas
{table} /Details.aspx /Products/Details.aspx
blog / {action} / {entry} / blog / show / 123
{reporttype} / {year} / {month} / {day} / sales / 2008/1/5
{localidade} / {ação} / EUA / show
{language} - {country} / {action} / pt-BR / show
{controller} / {action} / {id}http: // server / application / Products / show / beverages
{resource} .axd / {* pathInfo}http: //server/application/WebResource.axd? d =...
Eu procurei no Google, mas todas as postagens parecem supor que eu conheço os formatos e não encontrei nenhuma explicação detalhada. Eles têm que ser nomes fixos como {controller} {action} {id} etc, ou eles ganharam. t trabalho? Os nomes de valor do objeto anônimo padrão também precisam corresponder a eles? Além disso, o que o "*" significa em {* pathInfo} eu não encontrei a explicação para isso, neighter. Obrigado.