我将参数从aspx页面传递到报表服务器并获取此异常。这是我设置报告参数的代码。
ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://zeeshankhatri-p/ReportServer_MSSQLSERVER2012");
ReportViewer1.ServerReport.ReportPath = "/DBAReporting/Clients";
ReportParameter p = new ReportParameter();
p.Name = "clientName";
p.Values.Add("Bank Alfalah");
ReportViewer1.ServerReport.SetParameters(p);
选择参数可见性=内部
允许空白值=已选中
允许空值=已检查
可用值=无
默认值=无默认值
查询:
查询类型=存储过程
参数:
参数名称= @clientName
参数值= [@clientName]
你可以在我的案例中建议我做错了吗?
答案 0 :(得分:3)
有许多问题可能导致这种情况:
删除服务器报告并再次部署以重置回开发报告设置可能更容易。
您还尝试将单个参数对象传递给允许您传递许多参数的函数。
SetParameters
需要IEnumerable<ReportParameter>
(通常是List
),而不仅仅是ReportParameter
个对象。您需要将参数嵌入到IEnumerable
对象中。这是在一行代码中执行此操作的简单方法:
ReportViewer1.ServerReport.SetParameters(new ReportParameter[] { p });