2011-02-14 18 views
7

下面的代碼在我爲SSRS編寫的Windows界面中獲取了我爲報告參數輸入的值。但是,這隻適用於不允許MultiValue的參數。由於Parameter.Value是一個字符串,我不知道如何爲它分配多值。SSRS:如何在ParameterValue對象上設置多個值?

private RE2005.ParameterValue[] GetParamValueSettings() 
    { 
     var parameters = new RE2005.ParameterValue[_Parameters.Count()]; 

     for (int i = 0; i < _Parameters.Count(); i++) 
     { 
      parameters[i] = new RE2005.ParameterValue(); 
      parameters[i].Name = _Parameters[i].Name; 
      **parameters[i].Value = pnlParams.Controls[_Parameters[i].Name].Text;** 
     } 

     return parameters; 
    } 

對於以粗體線之上我曾嘗試此作爲測試: 參數[I]。價值= 「A,B,C」;(這些是有效值)

但報告發出錯誤,指出它需要有效值。在報告中這是我如何顯示它:=加入(參數!myParameter.Value,「,」)

任何意見讚賞,謝謝!

回答

4

with visual studio 2010,you can initialise the Report parameter with a string array

與2005年,你可能不得不多次添加參數與同名,但一個新的價值。

這是一個只有一個多值參數才能獲取報表參數的過程。

private RE2005.ParameterValue[] SetParameterValue(string name, string[] values) 
    { 
     var parameters = new RE2005.ParameterValue[values.Count()]; 

     for (int i = 0; i < values.Count(); i++) 
     { 
      parameters[i] = new RE2005.ParameterValue(); 
      parameters[i].Name = name; 
      parameters[i].Value = value; 
     } 
     return parameters; 
    }