【发布时间】:2012-05-18 23:43:35
【问题描述】:
我是 JSON 新手,想使用 StringBuilder 制作简单的 JSON 对象,该对象将通过 jQuery Ajax 调用进行查询。
[WebMethod]
public static string GetmyJSON()
{
StringBuilder sb = new StringBuilder();
sb.Append("{firstname: \"Manas\",").Append("lastname : \"Tunga\"").Append("}");
return sb.ToString();
}
在我的客户端代码中:
.ajax({
type: "POST",
url: "simplePage.aspx/GetmyJSON",
data: "{}",
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
alert(data.d.firstname);
} // end of sucess
}); // End of ajax
但我的警报消息显示“未定义”而不是“玛纳斯”。 是否可以使用 StringBuilder 返回 JSON 对象?
【问题讨论】:
-
您可以构建适当的 .net 对象,该对象封装您要发回的数据,并通过 JSON.Net 等库将它们转换为 JSON。如果您想要一些内置技术,请使用 DataContractSerializer 进行一些研究
-
如果你坚持要这样,ether把
\"改成',ether把它改成\\\" -
JSON 属性名必须加引号,即:
{"id":10}