1

サーバー側のモデル オブジェクトで埋められた、部分ビューの kendoui グリッドがあります。それはすべて大丈夫です。しかし、モデル IQueryable は、タイトルでソートするように定義されています。グリッドでは、並べ替えや ID による並べ替えはありません。

アプリ(SQL Server Express)によって実行されたSQLをチェックする可能性はありません。事前に並べ替えられたリストが変更されないように設定する必要がある設定はありますか?

ビューコードは次のとおりです。

@(Html.Kendo().Grid<DataModel.Buch>(Model)
    .Name("books")
    .Columns(columns =>
    {
        columns.Bound(b => b.Privat).Title("P/G").Width(40).Template(@<text>
    @if (item.Privat)
    {
        <img src="~/Images/home_32.png" alt="private" title="privates Buch" />
    }
    else
    {
        <img src="~/Images/company_32.png" alt="business" title="TLRZ-eigenes Buch" />
    }
    </text>);
        columns.Bound(b => b.Titel).Template(@<text>@Html.ActionLink(item.Titel, "Details", "Book", new { id = item.Id }, null)</text>);
        columns.Bound(p => p.DatumAufnahme).Title("Aufnahme").Format("{0:d}").Width(120);
        columns.Bound(b => b.Isbn).Title("ISBN");
        columns.Bound(b => b.Verlag);
        columns.Bound(b => b.Author).Title("Autor");
        columns.Bound(b => b.Ausgeliehen).Template(@<text>
    @if (item.Ausgeliehen)
    {
        <span data-sid="@item.Leihen.Single(l => !l.Rueckgabedatum.HasValue).BenutzerSid" data-field="FullName"><img src='/Images/loader_circle_16.gif' alt='lade' />(ja...)</span>
    }
    else
    {
        <span>nein</span>
    }
    </text>);
        columns.Bound(p => p.BenutzerSid).Title("Verantwortliche(r)").Template(@<span data-sid="@item.BenutzerSid" data-field="FullName"><i><img src='/Images/loader_circle_16.gif' alt='lade' />(wird geladen...)</i></span>);
    })
    .Pageable()
    .Sortable())

ありがとう。

4

1 に答える 1

3

最初の並べ替え方向は、ドキュメントのこの部分に示されているように構成する必要があります。

.DataSource(dataSource => dataSource
    .Server()
    .Sort(sort =>
    {
        // Sort by UnitsInStock in descending order
        sort.Add(p => p.UnitsInStock).Descending();
        // then by ProductName in ascending order
        sort.Add(p => p.ProductName);
    })
)
于 2013-01-15T12:06:34.467 に答える