Telerik MVC Grid Ошибка - PullRequest
       8

Telerik MVC Grid Ошибка

0 голосов
/ 24 октября 2011

Сообщение об ошибке компилятора: CS1977: невозможно использовать лямбда-выражение в качестве аргумента для динамически отправляемой операции без предварительного приведения его к типу дерева делегата или выражения

Я использую шаблон Respository в этом проекте, поэтому данные, которые я получил, были получены с помощью сервисных вызовов, а не обычных запросов linq. Я не уверен относительно того, что они могут иметь в виду, говоря аргумент делегату или опытному лицу. тип дерева. вот код.

 @(Html.Telerik().Grid(Model)
    .Name("Grid").Columns(columns =>
    {
        columns.Bound(o => o.formId).Width(100);
        columns.Bound(o => o.Name).Width(200);
        //columns.Bound(o => o.ShipAddress);
        //columns.Bound(o => o.OrderDate).Format("{0:MM/dd/yyyy}").Width(120);
    })
    .DataBinding(dataBinding => 
    {
        dataBinding.Server().Select("Index", "Grid", new { ajax = ViewData["ajax"] });
        dataBinding.Ajax().Select("_Index", "Grid").Enabled((bool)ViewData["ajax"]);
    })
            .Scrollable(scrolling => scrolling.Enabled((bool)ViewData["scrolling"]))
            .Sortable(sorting => sorting.Enabled((bool)ViewData["sorting"]))
            .Pageable(paging => paging.Enabled((bool)ViewData["paging"]))
            .Filterable(filtering => filtering.Enabled((bool)ViewData["filtering"]))
            .Groupable(grouping => grouping.Enabled((bool)ViewData["grouping"]))
            .Footer((bool)ViewData["showFooter"])

)

public ActionResult Index(bool? ajax, bool? scrolling, bool? paging, bool? filtering, bool? sorting,
        bool? grouping, bool? showFooter)
    {
        ViewData["ajax"] = ajax ?? true;
        ViewData["scrolling"] = scrolling ?? true;
        ViewData["paging"] = paging ?? true;
        ViewData["filtering"] = filtering ?? true;
        ViewData["grouping"] = grouping ?? true;
        ViewData["sorting"] = sorting ?? true;
        ViewData["showFooter"] = showFooter ?? true;
        return View(formService.GetForms());
    }

    [GridAction]
    public ActionResult _Index()
    {
        return View(new GridModel(formService.GetForms()));
    }

Ответы [ 2 ]

2 голосов
/ 04 ноября 2011

С моей стороны это была халатность, тип возвращаемого представления был типа Viewmodel, в отличие от модели, поступающей из сервисной модели.

0 голосов
/ 25 октября 2011

В вашей модели есть что-то динамическое, не так ли? Ошибка говорит о том, что C # не может создать выражение из динамически отправляемой операции.

Если вы хотите привязать Telerik Grid для ASP.NET MVC к динамической модели, проверьте этот проект библиотеки кодов.

...