能系统.对象类保存数据表对象的对象
本文关键字:对象 数据表 保存 系统 | 更新日期: 2023-09-27 18:02:46
我在vs2010中的c#中有一个方法,应该返回系统的通用对象。因为这些方法返回不同类型的结果比如int, datatable,string。对象既可以保存int也可以保存string但是当我将datatable保存或分配给泛型对象时它会抛出错误-
Server was unable to process request. ---> There was an error generating the XML document. ---> The type System.Data.DataTable may not be used in this context. To use System.Data.DataTable as a parameter, return type, or member of a class or struct, the parameter, return type, or member must be declared as type System.Data.DataTable (it cannot be object). Objects of type System.Data.DataTable may not be used in un-typed collections, such as ArrayLists.
因为我正在开发web方法,所以这就是为什么它抛出错误的另一部分。
泛型对象可以保存数据表对象吗?
是通用对象可以容纳一个数据表(它可以很容易地检查-见下面的代码)。我猜你的问题不在于持有通用对象本身,而是与WebService和序列化集合的可能性(本地方法就可以了)。
using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
using System.Data;
namespace ConsoleApplication1
{
class Program
{
static void Main()
{
List<DataTable> t = new List<DataTable>();
t.Add(new DataTable());
ArrayList x = new ArrayList();
x.Add(new DataTable());
}
}
}
所有。net类型都继承自System.Object
,因此System.Object
可以容纳DataTable
。
可以。在Stackoverflow上有许多类似或相关的问题。请看下面的例子,它可能会对你有所帮助:
。. NET -将泛型集合转换为数据表