2012-01-30 245 views
1

我有一個錯誤如何解決此事先感謝:) datasource1顯示重載解析失敗,因爲沒有可訪問的'新'是更具體的有參數。報告查看器問題

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() 

回答

1

那是因爲你的DataSet對象的ds實例不匹配的ReportDataSource(String, Object)構造的要求。請參閱this MSDN reference for that constructor

此外,引用從該鏈路的備註:

值可以是DataTable一個實例,一個IEnumerable值( 例如,DataViewArray)或IDataSource

的問題是你想傳遞一個DataSet對象,既不是DataTable,也不實施IEnumerableIDataSource

換句話說,您不能將DataSet對象傳遞給此構造函數。解決辦法是將適當的DataTableDataSet中取出,並將DataTable實例傳遞給構造函數。