序列化DataTable以在RAZOR中使用

时间:2013-03-08 15:49:28

标签: razor asp.net-mvc-4 lambda

我有一个使用RAZOR的ASP.NET MVC 4应用程序。我的控制器操作将数据加载到DataTable中(我继承了代码)。我需要在我的视图中将该数据呈现为JSON。我尝试使用我在此推荐的方法:Writing JSON via MVC and RAZOR

我相信DataTable会导致我的问题。与此同时,我不知道该怎么做。如何从我的视图中呈现为JSON的DataRow元素中获取某些列?目前,我在控制器操作中有以下内容:

DataTable results = GetFromDatabase();
ViewBag.Results = results;

然后,在我看来,我有:

@{
    var serializer = new JavaScriptSerializer();
    var resultsJson = serializer.Serialize(Enumerable.Select(ViewBag.Results, result => new { id = result["ID"], name = result["Name"] }));
    Html.Raw(resultsJson);
}

当我尝试这个时,我收到一条错误消息: 不能将lambda表达式用作动态调度操作的参数,而无需先将其转换为委托或表达式树类型

我不确定如何解决这个问题。

0 个答案:

没有答案