我有一个错误,如何提前解决这个问题:)数据源1显示重载解析失败,因为没有可访问的“新”更具体的参数。
ReportViewer1.Visible = True
Dim thisDataSet As New DataSet()
Dim adapCategory As DataSetParameterTableAdapters.mCategoryTableAdapter = New DataSetParameterTableAdapters.mCategoryTableAdapter
Dim ds As DataSetParameter.mCategoryDataTable = New DataSetParameter.mCategoryDataTable()
adapCategory.Fill(ds, Me.DropDownList1.SelectedValue)
Dim datasource1 As New ReportDataSource("DataSetParameter_mCategory", ds)
ReportViewer1.LocalReport.DataSources.Clear()
ReportViewer1.LocalReport.DataSources.Add(datasource1)
ReportViewer1.LocalReport.Refresh()
答案 0 :(得分:1)
那是因为ds
对象的DataSet
实例与ReportDataSource(String, Object)
构造函数的要求不匹配。请参阅this MSDN reference for that constructor。
另外,引用该链接的评论:
值可以是
DataTable
的实例,IEnumerable
值(for 例如,DataView
或Array
)或IDataSource
。
问题是您尝试传递DataSet
对象,这既不是DataTable
,也不是IEnumerable
或IDataSource
。
换句话说,您无法将DataSet
对象传递给此构造函数。解决方案是从DataTable
中取出适当的DataSet
并将 DataTable
实例传递给构造函数。