如何从asp.net c#传递多值参数到SSRS?

时间:2013-08-01 18:52:49

标签: c# asp.net reporting-services

我正在使用嵌入的ReportViewer控件连接一个站点。我需要将Multi-value参数(字符串数据类型)传递给报表。我已尝试使用以下方法,但每次报告与参数出错时都缺少值。

这是我正在使用的方法:

string s = String.Join(",", paramValue.ToArray());
// method 2 carriage return new line delimited string

string s = String.Join("/r/n", paramValue.ToArray()) + "/r/n";
// method 3 values as a string array

string[] s = paramValue.ToArray();
paramList.Add(new ReportParameter("ParamName", s, false));

显然上面的代码并不是我正在使用的,但它确实显示了我尝试过的变化。

以上都不奏效。请帮我解决这个问题。

1 个答案:

答案 0 :(得分:2)

您必须将其作为数组添加到Values类型的StringCollection属性中。

 List<ReportParameter> rptParams = new List<ReportParameter>();
    ReportParameter param = new ReportParameter("ParamName");

    string[] values = new string[]{"a", "b", "c"};

    param.Values.AddRange(values);

    rptParams.Add(param);

    this.ReportViewer1.ServerReport.SetParameters(rptParams);