asp.net webservice怎么传递泛型、List<T>参数
1个回答
展开全部
抱歉,不能直接传递泛型数据
只能传递字符串
你可以考虑用把你的泛型转换成一种特定的格式,如json
然后取到这个字符串再把他转换成泛型
如
class Stu
{
public int Age{get;set;}
public string Name{get;set;}
}
List<Stu> list = new List<Stu>();
list.Add(new Stu(){Age = 18, Name="张三"});
list.Add(new Stu(){Age = 12, Name="李四"});
这个list可以表示成如下字符串格式
{stus:[{Age:18,Name:'张三'},{Age:12,Name:'李四'}]}
用js把该字符串转换成对象可以这样
var s = "{stus:[{Age:18,Name:'张三'},{Age:12,Name:'李四'}]}"; //这里我是直接赋值一个字符串给这个变量,但你应该是调用这个WEB服务得到的
var stus = eval("(" + s + ")").stus;
for(var i = 0;i < stus.length; i++){
alert(stus[i].Name);
}
如果你是其他语言调用的话你可以自己想办法再把这个字符串转换成你想要的对象类型
只能传递字符串
你可以考虑用把你的泛型转换成一种特定的格式,如json
然后取到这个字符串再把他转换成泛型
如
class Stu
{
public int Age{get;set;}
public string Name{get;set;}
}
List<Stu> list = new List<Stu>();
list.Add(new Stu(){Age = 18, Name="张三"});
list.Add(new Stu(){Age = 12, Name="李四"});
这个list可以表示成如下字符串格式
{stus:[{Age:18,Name:'张三'},{Age:12,Name:'李四'}]}
用js把该字符串转换成对象可以这样
var s = "{stus:[{Age:18,Name:'张三'},{Age:12,Name:'李四'}]}"; //这里我是直接赋值一个字符串给这个变量,但你应该是调用这个WEB服务得到的
var stus = eval("(" + s + ")").stus;
for(var i = 0;i < stus.length; i++){
alert(stus[i].Name);
}
如果你是其他语言调用的话你可以自己想办法再把这个字符串转换成你想要的对象类型
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询