0

すぐに使用できる MvcContrib グリッド ソートを使用すると、クエリ文字列の列と方向が URL に自動的に追加されます。例えば:

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

これを取得するために、クエリ文字列 (列と方向) を小文字にする方法はありますか?

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

MvcContrib バージョン 3 で ASP.NET MVC 3 を使用しています。

4

1 に答える 1

0

残念ながら、これらの値はMvcContrib.UI.Grid.HtmlTableGridRenderer<T>クラスでハードコーディングされています。

// 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
        }
    });
}

CreateRouteValuesForSortOptionsプライベート メソッドは、仮想保護メソッドによって呼び出されますRenderHeaderText。したがって、小文字のパラメーター名を使用したい場合、1 つの可能性は custom を記述することGridRenderer<T>です。

もう 1 つの可能性は、URL を小文字にするカスタム Route を作成することです。アプリケーション内のすべての URL を小文字にする方法を説明している次のブログ投稿をご覧ください。必要に応じて微調整できます。

于 2011-09-11T21:11:53.420 に答える