专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Web Service

webservice 返回datatable无法序列化 DataTable。未设置 DataTable 姓名

发布时间:2010-05-20 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草
webservice 返回datatable无法序列化 DataTable。未设置 DataTable 名称。
在做返回datatable时出现无法序列化 DataTable。未设置 DataTable 名称。
 
代码如下:
            Hashtable ht = new Hashtable();
            ht.Add("departure", departure);
            ht.Add("arrive", arrive);
            ht.Add("departuretime", departuretime);
            ht.Add("flytype", flytype);
            Class.ClassFlyfind flightfind = new Service.Class.ClassFlyfind();
            DataTable tmpdta = new DataTable();
            tmpdta.TableName = "tmp";
            tmpdta = flightfind.flightfind(ht);
            return tmpdta;

Class
            Hashtable ht = new Hashtable();
            ht.Add("departure", departure);
            ht.Add("arrive", arrive);
            ht.Add("departuretime", departuretime);
            ht.Add("flytype", flytype);
            Class.ClassFlyfind flightfind = new Service.Class.ClassFlyfind();
            DataTable tmpdta = new DataTable();
            tmpdta.TableName = "tmp";
            tmpdta = flightfind.flightfind(ht);
            return tmpdta;



报错如下

System.InvalidOperationException: 生成 XML 文档时出错。 ---> System.InvalidOperationException: 无法序列化 DataTable。未设置 DataTable 名称。
   在 System.Data.DataTable.WriteXmlSchema(XmlWriter writer, Boolean writeHierarchy)
   在 System.Data.DataTable.System.Xml.Serialization.IXmlSerializable.WriteXml(XmlWriter writer)
   在 System.Xml.Serialization.XmlSerializationWriter.WriteSerializable(IXmlSerializable serializable, String name, String ns, Boolean isNullable, Boolean wrapped)
   在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write4_DataTable(Object o)
   在 Microsoft.Xml.Serialization.GeneratedAssembly.DataTableSerializer.Serialize(Object objectToSerialize, XmlSerializationWriter writer)
   在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter, Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String id)
   --- 内部异常堆栈跟踪的结尾 ---
   在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter, Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String id)
   在 System.Xml.Serialization.XmlSerializer.Serialize(TextWriter textWriter, Object o, XmlSerializerNamespaces namespaces)
   在 System.Xml.Serialization.XmlSerializer.Serialize(TextWriter textWriter, Object o)
   在 System.Web.Services.Protocols.XmlReturnWriter.Write(HttpResponse response, Stream outputStream, Object returnValue)
   在 System.Web.Services.Protocols.HttpServerProtocol.WriteReturns(Object[] returnValues, Stream outputStream)
   在 System.Web.Services.Protocols.WebServiceHandler.WriteReturns(Object[] returnValues)
   在 System.Web.Services.Protocols.WebServiceHandler.Invoke()


不胜感激
------解决方案--------------------
datatable不支持序列化,直接返回dataset吧。或者自定义一个类。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: