如何将Linq以SQL数据序列化为C中的JSON#
我正在尝试生成JSON。数据在那里,但我的理解是,我需要序列化它才能正常工作。我是C#的初学者,所以牛顿软件网站上的文档对我来说有点陌生。这是我的C#代码。如何将Linq以SQL数据序列化为C中的JSON#
public partial class Pages_ChartTest : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static IEnumerable<procReportSalesCountsResult> jsonData()
{
using (OpsDBDataContext dc = new OpsDBDataContext())
{
return dc.ReportSalesCounts().ToList();
}
}
}
什么是序列化的最后一步。我在ASP中使用Linq To SQL来提取这些数据。谢谢你们。
直到4.5,.NET本身不支持JSON。从VS包管理器直接下载Newtonsoft的nuget包JSON.net。
http://james.newtonking.com/json
public static string jsonData() {
var buffer = null;
using (OpsDBDataContext dc = new OpsDBDataContext()) {
buffer = dc.ReportSalesCounts().ToList();
}
return JsonConvert.SerializeObject(buffer);
}
我做到了。我带来了newtonsoft命名空间。谢谢您的回复。我只是不知道如何在我的代码中实现它 – aaron 2014-09-19 20:14:26
'JsonConvert.SerializeObject(object)'返回字符串 – 2014-09-19 20:24:35
谢谢Mark。所以这样?对不起,我只是在学习。公共静态IEnumerable
如果你犯了一个'GET'请求,现在情况如何? – 2014-09-19 20:04:24
如果我在我的JS文件中获取请求,我得到一个500错误。如果我从同一文件发出POST请求并输出到控制台,我会得到{“d”:[{“__ type”:“procReportSalesCountsResult”,“MonthID”:null,“SoldCount”:74,“MonthName”:“Jan “},{” __类型 “:” procReportSalesCountsResult “ ”MonthID“:NULL, ”SoldCount“:74, ”MONTHNAME“: ”二月“},{ ”__类型“: ”procReportSalesCountsResult“, ”MonthID“:NULL,” SoldCount “:114,”MonthName“:”Mar“} – aaron 2014-09-19 20:08:04
,除了一些奇怪的编码(在''月份'月'''74')你贴在那里(我希望不是在原来的) ']}'在最后(我希望它是原创的),看起来像JSON。尝试粘贴到http://jsonlint.org/ – 2014-09-19 20:38:04