sha*_*ish 5 c# asp.net web-services return
可以将两个值从WebService返回到jQuery.
我尝试过
[WebMethod(EnableSession = true)]
public string testing(string testId)
{
string data = string.Empty;
string data1 = string.Empty;
List<test1> datalist1 = new List<test1>();
List<test> datalist = new List<test>();
//coding
data = jsonSerialize.Serialize(datalist1);
data1 = jsonSerialize.Serialize(datalist);
return [data,data1];
}
Run Code Online (Sandbox Code Playgroud)
但它显示错误....我们如何从webservice返回两个值.....
另一种方法是创建一个具有所需的两个返回值的自定义数据类型:
[Serializable]
public sealed class MyData
{
public string Data { get; set; }
public string Data1 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
...
[WebMethod(EnableSession = true)]
public MyData testing(string testId)
{
string data = string.Empty;
string data1 = string.Empty;
List<test1> datalist1 = new List<test1>();
List<test> datalist = new List<test>();
//coding
data = jsonSerialize.Serialize(datalist1);
data1 = jsonSerialize.Serialize(datalist);
return new MyData { Data = data, Data1 = data1 };
}
Run Code Online (Sandbox Code Playgroud)
要么
[Serializable]
public sealed class MyData
{
public List<test> Data { get; set; }
public List<test1> Data1 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
...
[WebMethod(EnableSession = true)]
public string testing(string testId)
{
MyData data = new MyData();
string alldata = string.Empty;
List<test1> datalist1 = new List<test1>();
List<test> datalist = new List<test>();
//coding
data.Data = datalist1;
data.Data1 = datalist;
alldata = jsonSerialize.Serialize(data);
return alldata;
}
Run Code Online (Sandbox Code Playgroud)
那么你可以返回一个字符串数组:
public string[] Testing(...)
{
return new string[] { data, data1 };
}
Run Code Online (Sandbox Code Playgroud)
然后,您需要在客户端上单独执行JSON反序列化的每一位,这不太可能非常令人愉快:(
我尝试过像
return jsonSerialize.Serialize(new { list1 = datalist1, list = datalist });
Run Code Online (Sandbox Code Playgroud)
我可以轻松地从我的 jQuery 文件中接收这些。感谢大家的支持
| 归档时间: |
|
| 查看次数: |
10206 次 |
| 最近记录: |