我正在使用jquery方法,将信息(即仅成员标识#)从客户端发送到服务器端。
服务器端实现了传统的Web Method,以捕获发送的数据并基于它执行SQL查询。
Web-service-method-using-jQuery
但是到目前为止,我在 SQL 查询之后一直将单个字符串从服务器端返回到客户端。
想知道返回一系列复杂字符串的最佳方式是什么...成员(member)标识号、开始日期、结束日期、成员(member)类型...根据成员(member)的类型,可以有多个开始日期和结束日期。
我应该研究 XML 吗?
最佳答案
返回一个数据表怎么样
$.ajax({
type: "POST",
url: "YourPage.aspx/doSomething",
data: "{'id':'1'}",
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (data) {
var returnedstring = data.d;
var jsondata = $.parseJSON(data.d);//if you want your data in json
}
});
aspx:
[WebMethod]
public static string doSomething(int id)
{
....
DataTable dt = new DataTable();
dt = anothermethodReturningdt(id)
return JsonConvert.SerializeObject(dt);
}
您可以使用json.net用于序列化 .Net 对象
编辑
你也可以这样做
[WebMethod]
public static string doSomething(int id)
{
Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Price = 3.99M;
product.Sizes = new string[] { "Small", "Medium", "Large" };
return JsonConvert.SerializeObject(product);
}
重点是您可以序列化任何类型的对象、数组、集合等,然后将其传递回调用脚本。
关于javascript - 使用 Jquery Ajax 调用 Asp.net Web 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14819607/