【发布时间】:2019-06-25 01:51:38
【问题描述】:
我正在 ASP.Net (VB.Net) 中创建一个动态报告查看器,它动态加载 RDLC,并且一切都按预期工作。 我遇到的唯一问题是当我尝试使用其字符串名称创建 DataSet 的实例以便相应地填充报告数据时。
以下是我一直尝试运行但没有成功的代码:
Dim MyInstance As Object = Activator.CreateInstance(Type.GetType("ClassList"))
MyInstance = GetReportData()
Dim datasource As New ReportDataSource(FID, MyInstance.Tables(FID))
rptViewer.LocalReport.DataSources.Clear()
rptViewer.LocalReport.DataSources.Add(datasource)
GetType 总是返回 Nothing,因此 CreateInstance 会引发错误。 以下是运行良好的代码:
Dim MyInstance As Object = Activator.CreateInstance(GetType(ClassList))
MyInstance = GetReportData()
Dim datasource As New ReportDataSource(FID, MyInstance.Tables(FID))
rptViewer.LocalReport.DataSources.Clear()
rptViewer.LocalReport.DataSources.Add(datasource)
提前谢谢你,
【问题讨论】:
-
您能澄清一下什么是字符串名称吗?您是否尝试使用特定列创建 DataSet?
-
“ClassList”是驻留在 App_Code 文件夹中的现有 DataSet (ClassList.xsd) 的名称。