为什么不能返回DataTable类型和SortedList对象

liuweijing 2006-12-15 10:40:29
[WebMethod]
public DataSet PubSel(string strProName,SortedList slParames)
{
return getDataSet(strProName,slParames);
}
这样的一个方法,我传了两个参数为什么为提示:System.NotSupportedException: 不支持类型 System.Collections.SortedList,因为它实现 IDictionary。
而用把SortedList改ArrayList就可以呢,真的搞不懂了,还有就是为什么返回DataTable就不行呢,有没有高手在呀!帮帮忙!

...全文
216 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
irvinerun 2006-12-23
  • 打赏
  • 举报
回复
你就新建一个Dataset~把这个Table给Add进去,然后返回Dataset~~这么解决肯定没问题~
ms44 2006-12-20
  • 打赏
  • 举报
回复
有一些对象是不可以传递数据的。
Hashtable也是。
msdn 文档中说明了为什么
liuweijing 2006-12-15
  • 打赏
  • 举报
回复
SortedList类为什么不行,真的不明白,因为我本来没有做分布式的,现在要做成分布式,而起先用的是SortedList是用
SortedList slParams = new SortedList( 2 );
slParams.Add( "@username", UserName.Text.Trim() );
slParams.Add( "@password", Password.Text.Trim() );
传送参数的,然后用if( slParams != null )
{
for( int i = 0; i < slParams.Count; i ++ )
{
cmd.Parameters.Add( slParams.GetKey( i ).ToString(), slParams.GetByIndex( i ) );
}}
取出来,现在我在WebService里用这个对象就不行了,真的晕呀,有没有办法决解这个问题,如果改成ArrayList有没有办法像SortedList 一样传存储过程的参数和值过去呀,是刚弄WebService不是很懂,请各位高手指导一下呀
ice_frank 2006-12-15
  • 打赏
  • 举报
回复
可能是Webservice在传送过程中需要XML支持,所以类型上有些限制,一般数据返回都采用Dataset
liuweijing 2006-12-15
  • 打赏
  • 举报
回复
怎么没人在呀
liuweijing 2006-12-15
  • 打赏
  • 举报
回复
Web Service 是不是一定要有序列化才可以的
华芸智森 2006-12-15
  • 打赏
  • 举报
回复
DataSet 是可序例化的最小单位了.
DataTable在IE中输出可以,但是,DATATABLE是无法返序列化的.
了解一下什么对象可以序列化,什么对象不可以序列化..

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧