Kendo, comment faire de la Grille de serveur d'échange à l'aide de mvc4 helper

Je suis en utilisant mvc4. Sur une de mes page, il a Kendo de la Grille. Je veux montrer à 5 lignes par page. Je n'ai aucun problème à le faire à l'aide de javascript, cependant, Si je suis en utilisant mvc helper. Je suis perdu, je ne trouve pas d'échantillons en ligne.

voici mon code javascript.

        <script language="javascript" type="text/javascript">

            $(document).ready(function () {
                $("#grid").kendoGrid({
                    dataSource: {
                        type: "json",
                        serverPaging: true,
                        pageSize: 5,
                        transport: { read: { url: "Products/GetAll", dataType: "json"} },
                        schema: { data: "Products", total: "TotalCount" }
                    },
                    height: 400,
                    pageable: true,
                    columns: [
                            { field: "ProductId", title: "ProductId" },
                            { field: "ProductType", title: "ProductType" },
                            { field: "Name", title: "Name" },
                            { field: "Created", title: "Created" }
                        ],
                    dataBound: function () {
                        this.expandRow(this.tbody.find("tr.k-master-row").first());
                    }
                });
            });

maintenant, si je suis en utilisant mvc helper

            @(Html.Kendo().Grid(Model)
                .Name("Grid")  //please help me to finish the rest

Mise à jour:

Ajoutant le code de l'action.

    [HttpPost]
    public ActionResult GetAll([DataSourceRequest]DataSourceRequest request, int id)
    {
        var products= ProductService.GetAll(id);

        return Json(products.ToDataSourceResult(request));
    }

GetAll méthode de la couche service:

    public IQueryable<Product> GetAll(int id)
    {
        var products= ProductRepository.Get(p => p.Id== id && p.IsActive == true, null, "ProductionYear")
                    .OrderBy(o => o.Name); //.ToList();

        return Product.Select(p => new ProductVM()
        {
            Name = p.Name,
            ProductionYear= p.ProductionYear.Year.ToString()
            Id = p.Id
        }).AsQueryable();
    }

maintenant, si je lance l'application, je reçois l'erreur suivante:

"LINQ to entities ne reconnaît pas la méthode" du Système.String ToString ()', et cette méthode ne peut pas être traduit dans un magasin d'expression."}

dans le GetAll méthode, j'ai fait un commentaire sur la "ToList()". Si j'utilise ToList, tout fonctionne. mais je vais l'interroger tous les rangs au lieu de cela, juste ces lignes j'avais besoin de cette page.

OriginalL'auteur qinking126 | 2012-10-03