我想用DataTable来返回数据,我写了一下如下的方法来测试,结果返回后面的错误[WebMethod]
public DataTable HelloWorld()
{
DataTable ResultTable = new DataTable("msgTable");
ResultTable.Columns.Add("Content",typeof(string));
ResultTable.Rows.Add(new object[]{"HelloWorld"});
return ResultTable;
}错误:
类型 System.ComponentModel.ISite 的成员 System.ComponentModel.MarshalByValueComponent.Site 是接口,因此无法将其序列化。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NotSupportedException: 类型 System.ComponentModel.ISite 的成员 System.ComponentModel.MarshalByValueComponent.Site 是接口,因此无法将其序列化。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 堆栈跟踪:
[NotSupportedException: 类型 System.ComponentModel.ISite 的成员 System.ComponentModel.MarshalByValueComponent.Site 是接口,因此无法将其序列化。]
System.Xml.Serialization.TypeScope.ImportTypeDesc(Type type, Boolean canBePrimitive, MemberInfo memberInfo)
System.Xml.Serialization.TypeScope.GetTypeDesc(Type type, MemberInfo source, Boolean directReference)
System.Xml.Serialization.TypeScope.GetTypeDesc(Type type, MemberInfo source)
System.Xml.Serialization.StructModel.GetPropertyModel(PropertyInfo propertyInfo)
System.Xml.Serialization.StructModel.GetFieldModel(MemberInfo memberInfo)
System.Xml.Serialization.XmlReflectionImporter.ImportStructLikeMapping(StructModel model, String ns)
System.Xml.Serialization.XmlReflectionImporter.ImportStructLikeMapping(StructModel model, String ns)
System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType, Boolean repeats)[InvalidOperationException: 反射类型“System.Data.DataTable”时出错。]
System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType, Boolean repeats)
System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType)
System.Xml.Serialization.XmlReflectionImporter.ImportAccessorMapping(MemberMapping accessor, FieldModel model, XmlAttributes a, String ns, Type choiceIdentifierType)
System.Xml.Serialization.XmlReflectionImporter.ImportMemberMapping(XmlReflectionMember xmlReflectionMember, String ns, XmlReflectionMember[] xmlReflectionMembers)
System.Xml.Serialization.XmlReflectionImporter.ImportMembersMapping(XmlReflectionMember[] xmlReflectionMembers, String ns, Boolean hasWrapperElement
----------------------------------
请问如何才能返回DataTable类型。
用DataSet 倒是可以返回,但是返回DataSet这样的数据类型,jsp可以调用吗?
public DataTable HelloWorld()
{
DataTable ResultTable = new DataTable("msgTable");
ResultTable.Columns.Add("Content",typeof(string));
ResultTable.Rows.Add(new object[]{"HelloWorld"});
return ResultTable;
}错误:
类型 System.ComponentModel.ISite 的成员 System.ComponentModel.MarshalByValueComponent.Site 是接口,因此无法将其序列化。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NotSupportedException: 类型 System.ComponentModel.ISite 的成员 System.ComponentModel.MarshalByValueComponent.Site 是接口,因此无法将其序列化。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 堆栈跟踪:
[NotSupportedException: 类型 System.ComponentModel.ISite 的成员 System.ComponentModel.MarshalByValueComponent.Site 是接口,因此无法将其序列化。]
System.Xml.Serialization.TypeScope.ImportTypeDesc(Type type, Boolean canBePrimitive, MemberInfo memberInfo)
System.Xml.Serialization.TypeScope.GetTypeDesc(Type type, MemberInfo source, Boolean directReference)
System.Xml.Serialization.TypeScope.GetTypeDesc(Type type, MemberInfo source)
System.Xml.Serialization.StructModel.GetPropertyModel(PropertyInfo propertyInfo)
System.Xml.Serialization.StructModel.GetFieldModel(MemberInfo memberInfo)
System.Xml.Serialization.XmlReflectionImporter.ImportStructLikeMapping(StructModel model, String ns)
System.Xml.Serialization.XmlReflectionImporter.ImportStructLikeMapping(StructModel model, String ns)
System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType, Boolean repeats)[InvalidOperationException: 反射类型“System.Data.DataTable”时出错。]
System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType, Boolean repeats)
System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType)
System.Xml.Serialization.XmlReflectionImporter.ImportAccessorMapping(MemberMapping accessor, FieldModel model, XmlAttributes a, String ns, Type choiceIdentifierType)
System.Xml.Serialization.XmlReflectionImporter.ImportMemberMapping(XmlReflectionMember xmlReflectionMember, String ns, XmlReflectionMember[] xmlReflectionMembers)
System.Xml.Serialization.XmlReflectionImporter.ImportMembersMapping(XmlReflectionMember[] xmlReflectionMembers, String ns, Boolean hasWrapperElement
----------------------------------
请问如何才能返回DataTable类型。
用DataSet 倒是可以返回,但是返回DataSet这样的数据类型,jsp可以调用吗?
解决方案 »
- 页面如何转向?
- asp.net 关于js脚本的问题,运行之后没有倒数秒数,哪里出错了?!
- 使用gridview,添加了conmmandField的编辑、更新、取消,在点击编辑时,怎样仅使某列可编辑,是第一列也可以编辑;
- 数据引用的问题
- 传递参数丢失
- Keepbalance.NET重金诚邀界面设计高手重新设计网站界面.
- 在发出去的邮件里面,怎么做退订功能?
- 会员有个人会员和企业会员,还有游客,三类人;现要建一数据库表,要怎么样实现订单表,会员表的设计????注:游客提交的订单也要记录入库中的
- 哪一本书好???
- b/s结构的安全性问题,有什么好办法???
- .net 权限的问题!高手帮忙解决一下!!!!!!!!!!
- 跪求高手解答:如何一起提交DataList中的FileUpload
可以返回DataSet类型.
谢谢,我那天做没有办法就返回了DataSet 和用 DataSet 作参数的。
现在知道可以就放心了,呵呵。to:hertcloud
我现在用的是1.1谢谢以上三位,我现在试着看看可不可以通过实现那个什么鬼接口来搞定,最迟明天结贴,我刚才在网上搜了,也没有什么具体的方法,都是提议用DataSet来返回。
[WebMethod]
public DataSet GetTicketsByTrainNumber(string TrainNumber)
{
DataSet ds=new DataSet();
SqlDataAdapter DA=new SqlDataAdapter("Select * From Tickets Where Train_number='"+TrainNumber+"'",Conn);
DA.Fill(ds,"Tickets");
if(ds.Tables[0].Rows.Count>0)
return ds;
else
return null;
}