我想用.split
将多个值传递给多值启用参数。如果我选择4个项目,则4个值将传递到水晶报告中,但所有4个值将与最后一个项目具有相同的值(即,如果我选择1,2,3,4
水晶报告接收4,4,4,4
)。
ParameterField f1 = CrystalReportViewer1.ParameterFieldInfo["Emp Id"];
ParameterDiscreteValue v1 = new ParameterDiscreteValue();
string LBL1 = Request.QueryString["LBL1"].ToString();
string[] LBL1split = LBL1.Split(',');
foreach (string item in LBL1split)
{
v1.Value = item;
f1.CurrentValues.Add(v1);
}
新值是否覆盖了.CurrentValues
?
由于
答案 0 :(得分:2)
您应该注意到您正在将课程传递给CurrentValues.Add
方法
所以你唯一需要改变的是:
将ParameterDiscreteValue v1 = new ParameterDiscreteValue();
放入循环
ParameterField f1 = CrystalReportViewer1.ParameterFieldInfo["Emp Id"];
string LBL1 = Request.QueryString["LBL1"].ToString();
string[] LBL1split = LBL1.Split(',');
foreach (string item in LBL1split)
{
ParameterDiscreteValue v1 = new ParameterDiscreteValue();
v1.Value = item;
f1.CurrentValues.Add(v1);
}