0
Grid.MVCソートが期待通りに機能しません。たとえば、数値と日付の値を持つ列があります。表示されたスクリーンショットは、Total Premiumソートだけが正常に動作していないことを示していますが、同様のことが有効な日付カラムでも発生します。番号や日付を伝えるために何か追加が必要なのですか?Grid.MVC Sorting Bug
@Html.Grid(Model.SearchResult).Named("searchGrid").Columns(col =>
{
col.Add(c => c.PolicyNumber).Titled("Number").Sortable(true);
col.Add(c => c.FormattedInsuredName).Titled("Insured Name").Sortable(true);
col.Add(c => c.FormattedAddress).RenderValueAs(m => Html.Raw(m.FormattedAddress)).Encoded(false).Sanitized(false).Titled("Property Address").Sortable(true);
col.Add(c => c.Status).Titled("Status").Sortable(true);
col.Add(c => c.FormattedEffectiveDate).Titled("Effective Date").Sortable(true);
col.Add(c => c.FormattedTotalPremium).Titled("Total Premium").Sortable(true);
col.Add().Encoded(false).SetWidth(150).Sanitized(false).Titled("Action").RenderValueAs(dd => Html.DropDownList("ddlAction", dd.DropDownActions, new { @class = "form-control ddlAction", @data_viewquote = dd.QuoteURL }));
}).WithPaging(25).Sortable(true)
以下のスクリーンショットから、Total Premium列が正しく並べ替えられていないことがわかります。 ASCとDESCのスクリーンショットがあります。コメントを
文字列として代わりに整数としてソートされているようです。彼らはアルファベット順に並べ替えています。そのため、1226が223より前に来るのです。並べ替える前に整数に変換する必要があります。私はこのための正確な方法を提供していないことをお詫びします、私はMVCにはあまり慣れていません - ちょうどあなたが正しい方向にあなたを指すと思った。 – Santi
私の前のコメントに気を付けるだけで、同じことが日付に行きます。それらをそれぞれのタイプに変換する必要があります。 – Santi
それは簡単でした。列は初期型から文字列にフォーマットされていました。それがわかったので、正しく分類されます。コメントありがとう。 –