次のコード:
var data = _context.People.ToList(); //_context is my DataContext.
結果を生成します。
[{ "name": "john", "age": "30" }, { "name": "jane", "age": "31" }]
しかし、私はそれを辞書にしたいので、次のようにします:
{ "xldata" : [{ "name": "john", "age": "30" }, { "name": "jane", "age": "31" }] }
次のようにして動作させました:
Dictionary<string,List<People>> vals = new Dictionary<string, List<People>>();
vals.Add("xldata", people);
しかし、私の辞書の値System.Object[]
はpeople
これの目的はデータをエクスポートすることなので、この行に到達すると:
var people = jss.Deserialize<List<People>>(args["xldata"]);
args["xldata"] is `System.Object[]` and it says `Invalid JSON primitive`.
以下は、データを Excel にエクスポートするためのスクリプトです。
$.post(urlContent + exportHandlerPath, Json, function(data) {
var viewData = {};
viewData.xldata = JSON.stringify(data);
html = ich.excelExportTemplate(viewData);
$excelExportContainer.html(html);
var input = $excelExportContainer.find('input#excelExportHiddenField');
input.val(viewData.xldata);
var $excelForm = $('#excelExportForm');
$excelForm.attr('action', '/People/ExportToExcel/');
$excelForm.submit();
}