Pergunta

Considere o seguinte rota:

    routes.MapRoute(
        "Service", // Route name
        "service/", // URL with parameters
        new {controller = "CustomerService", action = "Index"} // Parameter defaults
        );

Usando Url.Action("Service", "CustomerService") produz uma url de /service vez do /service/ esperado

Existe alguma maneira de chegar a este trabalho, ou eu tenho que recorrer a implementar o meu próprio encaminhamento decorrente RouteBase?

Foi útil?

Solução

Legenden - não há solução imediata para o problema. Você pode ter executado através de post do Jason Young sobre a questão, que é muito informativo. Scott Hanselmann postou uma resposta para isso aqui, basicamente, afirmando que ele não achava que foi um grande negócio, e se for, você pode aproveitar o novo módulo IIS7 reescrita para resolvê-lo.

Em última análise, porém, você pode querer olhar para uma solução que foi publicado por Murad sobre uma questão semelhante em StackOverflow: barra final em uma rota ASP.NET MVC

Outras dicas

Na página do evento carga add:

Dim rawUrl As String = HttpContext.Current.ApplicationInstance.Request.RawUrl
If Not rawUrl.EndsWith("/") Then
    HttpContext.Current.ApplicationInstance.Response.RedirectPermanent(String.Format("~{0}/", rawUrl))
End If
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top