У меня есть элемент управления ReportViewer в теге WindowsFormsHost в моем приложении WPF. Когда я использую этот код:
rptViewer1.LocalReport.ReportPath = ...
List<ReportParameter> parms = new List<ReportParameter>();
parms.Add(new ReportParameter("regionID", "01"));
rptViewer1.LocalReport.SetParameters(parms);
rptViewer1.RefreshReport();
Я получаю ошибку об отсутствии экземпляра источника данных. Я могу запустить хранимую процедуру вручную, а затем использовать ее для заполнения объекта источника данных, например ...
var dt = DAL.GetData()
var rds = new ReportDataSource("DataSet1", dt);
rptViewer1.LocalReport.DataSources.Add(rds);
И это приведет к отображению отчета, но затем я передаю свои параметры методу GetData (), а не отчету; это не кажется правильным. В моем проекте SSRS я использую общий источник данных, и он позволяет мне передавать параметры в интерфейсе отчета, как я и ожидал. Что я делаю не так?