首页 新闻 会员 周边

IList在webservice中序列化问题?

0
悬赏园豆:60 [已关闭问题]

众所周知,自定义的接口在webservice中是不能序列化的。

可为什么.net中的IList可以呢?无论作为返回值还是参数,都可以。

Reflector反射看不出答案,望高手解答,谢谢。

问题补充: 补充:是System.Collections.IList接口,谢谢!
雄健的主页 雄健 | 初学一级 | 园豆:140
提问于:2009-08-21 14:26
< >
分享
其他回答(1)
0

嗯?接口应该是不可以的吧!

“无法序列化接口 System.Collections.Generic.IList的”,起码在2.0是这样;

但是你可以序列化IList<object>的继承类或实现类,例如:

 public List<string> GetGenericList()

winzheng | 园豆:8797 (大侠五级) | 2009-08-21 23:52
0

因为IList要实现IEnumerable接口,所有不能序列化。只要是实现IEnumerable接口的都不能序列化

伽马科技.攻城师 | 园豆:1303 (小虾三级) | 2009-08-22 15:44
可问题是你在webservice中写 [webmethod] public System.Collections.IList GetIList(System.Collections.IList list) 这个是可以编译通过的?不明白,求解,谢谢!
支持(0) 反对(0) 雄健 | 园豆:140 (初学一级) | 2009-08-23 13:02
webservice传的都得序列化哇,ilist不能序列化,你要传自定义实体的list的话用List<>转换一下就OK了 如 (List<Entity>)IList<Entity>
支持(0) 反对(1) —无 名 | 园豆:200 (初学一级) | 2009-09-24 15:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册