日期:2014-05-18  浏览次数:20913 次

wcf返回SqlDataAdapter对象,在线等
我在调用GetDataTableOutAdapter函数时,报错套接字连接已中止,和我开始调用第一个函数GetDataTable时报一样的错,后来我通过网上查资料在服务里给返回的DataTable的属性TabelName赋了一个值就可以了,但返回SqlDataAdapter的函数我在网上也找不到需要的资料
[code=C#]
[OperationContract]                
                DataTable   GetDataTable(string   strSql);
                [OperationContract]
                DataTable   GetDataTableOutAdapter(string   strSql,   out   SqlDataAdapter   dpt);
[/code]



------解决方案--------------------
dataadapter这种东西不能返回, 属于不可序列化的对象.
------解决方案--------------------
DataAdapter 内含有一个connection 对象,如果把DataAdapter传递到客户端,那么客户端也必须要链接你的数据库,这样做还不如直接把数据库的链接字符串传递过去呢
这么做没有起到什么作用,一般情况下是客户端调用服务端,由服务端访问数据库并返回查询结果
------解决方案--------------------
我晕,你要确认你传递的类型是可序列化才行的啊,如果不可序列化,你只能传递类型中的关键属性,然后到另一方构建一个新类型。
------解决方案--------------------
探讨

那哪些类可以序列化,