返回Razor partial View作为JsonResult,ASP.NET MVC 5

时间:2016-04-08 17:13:39

标签: c# jquery json asp.net-mvc razor

我正在使用jQuery数据表。本教程http://www.codeproject.com/Articles/165410/ASP-NET-MVC-Editable-DataTable-jQuery-DataTables-a演示了如何使用datatable调用控制器操作。但是,datatable需要一个json响应,并且我有一个部分视图来加载表行。如何将ASP.NET MVC5 Razor(部分)视图(.cshtml)转换为JSON? 理想情况下使用Newtonsoft.Json但其他库也可以使用。

我可以使用json加载html表,如教程

所示
Build path specifies execution environment JavaSE-1.6. There are no JREs 
installed in the workspace that are strictly compatible with this environment.

控制器返回

$(document).ready(function () {   
            $("#example").html();
            $("#example").DataTable({
                "processing": true, // for show progress bar
                "serverSide": true, // for process server side
                "filter": false, // this is for disable filter (search box)
                "orderMulti": false, // for disable multiple column at once
                "ajax": {
                    "url": "/home5/AjaxGetJsonData",
                    "type": "GET",
                    //"datatype": "html"
                    "datatype": "json"
                }
                ,
                "columns": [
                         { "data": "Name", "name": "ContactName", "autoWidth": true },
                        { "data": "Age", "name": "CompanyName", "autoWidth": true },
                        { "data": "DoB", "name": "Phone", "autoWidth": true }
                ]
            });
        });

我想做点什么

   return Json(dataTableData, JsonRequestBehavior.AllowGet);

我也尝试将部分(.cshtml)视图转换为字符串,使用下面作为接受的答案Render a view as a string

PartialViewResult searchView = PartialView("Search", model);
return Json(JsonConvert.SerializeObject(searchView)); 

0 个答案:

没有答案