Pregunta

Cuando usa MVCContrib Grid Casting Out-the-Box, agrega automáticamente la columna y dirección de consulta a su URL. Por ejemplo:

www.mysite.com/listing?Column=Bedrooms&Direction=Ascending

¿Hay alguna forma de minúsculas las consultas (columna y dirección) para que obtenga esto:

www.mysite.com/listing?column=Bedrooms&direction=Ascending

Estoy usando ASP.NET MVC 3 con MVCContrib versión 3.

¿Fue útil?

Solución

Lamentablemente, esos valores están codificados en el MvcContrib.UI.Grid.HtmlTableGridRenderer<T> clase:

// MvcContrib.UI.Grid.HtmlTableGridRenderer<T>
private RouteValueDictionary CreateRouteValuesForSortOptions(GridSortOptions sortOptions, string prefix)
{
    if (string.IsNullOrEmpty(prefix))
    {
        return new RouteValueDictionary(sortOptions);
    }
    return new RouteValueDictionary(new Dictionary<string, object>
    {
        {
            prefix + ".Column", 
            sortOptions.Column
        }, 
        {
            prefix + ".Direction", 
            sortOptions.Direction
        }
    });
}

los CreateRouteValuesForSortOptions El método privado es invocado por el RenderHeaderText Método virtual protegido. Entonces, si desea tener nombres de parámetros en minúsculas, una posibilidad sería escribir una personalización GridRenderer<T>.

Otra posibilidad es escribir una ruta personalizada para hacer URL en minúsculas. Puede echar un vistazo al Siguiendo la publicación del blog Lo que ilustra cómo hacer que todas las URL en una aplicación sean minúsculas, pero podría modificarlo a sus necesidades.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top