我想转换DataTable为List<object>C#.这是我的代码.但它没有用.请帮我
public List<object> ShowMessage()
{
List<object> obj = new List<object>();
DataTable dt = new DataTable();
dt.Columns.Add("ID");
dt.Columns.Add("Name");
dt.Rows.Add("1","AAA");
dt.Rows.Add("2", "BBB");
dt.Rows.Add("3", "CCC");
foreach (DataRow dr in dt.Rows)
{
obj.Add(dr);
}
return obj;
}
Run Code Online (Sandbox Code Playgroud)
这是错误 -

我在asp.net上为web应用程序做了一个水晶报告.有些报道开得很好.但有时却没有.它显示了以下问题.
索引无效.(HRESULT异常:0x8002000B(DISP_E_BADINDEX))
描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.
异常详细信息:System.Runtime.InteropServices.COMException:索引无效.(来自HRESULT的异常:0x8002000B(DISP_E_BADINDEX))
源错误:在执行当前Web请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息.
堆栈跟踪:[COMException(0x8002000b):索引无效.(来自HRESULT的异常:0x8002000B(DISP_E_BADINDEX))]
Report_Viewer.Page_Load(Object sender,EventArgs e)+894
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp,Object o,Object t,EventArgs e)+14
System.Web .Util.CalliEventHandlerDelegateProxy.Callback(Object sender,EventArgs e)+35
System.Web.UI.Control.OnLoad(EventArgs e)+99
System.Web.UI.Control.LoadRecursive()+50
System.Web.UI.Page .ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,布尔includeStagesAfterAsyncPoint)+627
版本信息:Microsoft .NET Framework版本:2.0.50727.4927; ASP.NET版本:2.0.50727.4927
我的VS:VS 2008,数据库:MS SQL Express 2005,操作系统:Windows 7
有没有人来解决我的问题..
注意:我的代码属于一个类
public ReportDocument ShowReport(string ReportName, string Parameter1)
{
try
{
cryRpt.Load(ReportName);
cryRpt.SetDatabaseLogon(UserName, Password, ServerName, DatabaseName);
crParameterValues.Clear();
crParameterDiscreteValue.Value = Parameter1;// as like Parameter1
crParameterFieldDefinitions = cryRpt.DataDefinition.ParameterFields;
crParameterFieldDefinition = crParameterFieldDefinitions["@Parameter1"];
crParameterValues = crParameterFieldDefinition.CurrentValues;
crParameterValues.Add(crParameterDiscreteValue);
crParameterFieldDefinition.ApplyCurrentValues(crParameterValues);
}
catch (Exception ex)
{
throw ex;
//ShowReport(@"default_report.rpt");
}
//CleareParameter();
return cryRpt;
} …Run Code Online (Sandbox Code Playgroud)