我不知道如何用代码返回JSON数据。
JS
$(function () {
$.ajax({
type: "POST",
url: "Default.aspx/GetProducts",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// How to return data here like a table???
$("#Second").text(msg.d);
//alert(msg.d);
}
});
});
C#的Default.aspx.cs
[WebMethod]
public static string GetProducts()
{
var products = context.GetProducts().ToList();
return What do I have to return ????
}
提前致谢!
你不远 您需要执行以下操作:
[WebMethod]
public static string GetProducts()
{
// instantiate a serializer
JavaScriptSerializer TheSerializer = new JavaScriptSerializer();
//optional: you can create your own custom converter
TheSerializer.RegisterConverters(new JavaScriptConverter[] {new MyCustomJson()});
var products = context.GetProducts().ToList();
var TheJson = TheSerializer.Serialize(products);
return TheJson;
}
您可以进一步减少此代码,但为清晰起见,我将其保留下来。实际上,您甚至可以这样写:
return context.GetProducts().ToList();
这将返回一个json字符串。我宁愿更加明确,因为我使用自定义转换器。也有Json.net,但是框架的JavaScriptSerializer
工作开箱即可。
问题内容: 我正在为我的网站创建自动完成功能。到目前为止,javascript部分已经结束。另外,我可以获取匹配用户的MembershipUser对象。 我需要以以下格式返回JSON: 这是ashx中的代码: 如何以所需格式返回json?谢谢。 问题答案:
问题内容: 我有一个包含许多ListView的页面,我希望用户能够对它们进行排序和翻页。我不想每次都回发并重新绑定整个页面,而是希望通过jQuery / AJAX有选择地针对所涉及的控件进行操作。我很容易在页面中对WebMethod进行客户端调用- 我的问题是如何通过jQuery将返回的数据返回到ListView中? (注意:我不想使用UpdatePanel!) 问题答案: 我不确定仅由于List
问题内容: 我尝试添加 检查返回的对象是否为空,但是它不起作用。 有人可以告诉我这是怎么回事吗? 问题答案: 只需测试数组是否为空。
问题内容: 我正在构建一个客户端脚本繁重的ASP.NET MVC应用程序,它将使用JSON和jQuery来操作DOM。 我的理解是 Web API Controller 和 MVC Controller 都可以返回JSON。 在我的情况下,应该使用 Web API控制器 还是 MVC控制器 ? 问题答案: 可以在任何ASP.NET应用程序中创建并托管Web API控制器,而不仅仅是MVC应用程序。
根据我的场景,我应该使用Web API控制器还是MVC控制器?
问题内容: 我使用ASP.NETMVC从jQuery发布JSON,并使用此小库函数获取一些JSON: 所以显然我会这样称呼: ASP.NET MVC 3和ASP.NET MVC4支持事物的提交方面(在需要扩展ASP.NETMVC来处理提交JSON之前),但是我遇到的问题是返回。在控制器上,我经常返回null,基本上说“成功,没什么可说的”,例如: 我经常使用这种模式,并且效果很好-调用了我的成功/