2013-04-08 27 views
6

Tôi đang sử dụng Trình tạo báo cáo và tải báo cáo trong C#, cũng thiết lập một số thông số trong C# quá:Làm thế nào để thiết lập nhiều số nguyên ReportParameter trong C#?

Câu hỏi của tôi là, làm cách nào để đặt ReportParameter của nhiều giá trị số nguyên khi tôi lưu trữ trong một mảng?

Tôi đã thử những điều sau đây:

MyReportViewer.ServerReport.SetParameters(
     new ReportParameter("storeSelected", new int[3]{2,3,4}, false) 
); 

Tuy nhiên, điều này không làm việc, bởi vì ReportParameter không mất int.

Tôi cũng đã thử như sau:

MyReportViewer.ServerReport.SetParameters(
     new ReportParameter("storeSelected", new int[3]{"2", "3", "4" }, false) 
); 

này cũng không hoạt động như tham số của tôi "storeSelected" là kiểu int, và sẽ ném một lỗi loại chuyển đổi.

Tôi cần làm gì để chuyển mảng số nguyên của mình vào reportParameter?

+0

Điều đó thậm chí biên dịch? –

+0

'Tuy nhiên điều này không hoạt động 'có nghĩa là gì ..? bạn đang thấy gì so với những gì bạn đang mong đợi. Hãy xem trang web MSDN này có vẻ như bạn không vượt qua 'ReportParams []' đúng http://msdn.microsoft.com/en-us/library/ms252178%28v=vs.80%29.aspx – MethodMan

+0

Hình như ReportParameter không có [hàm tạo] (http://msdn.microsoft.com/en-us/library/microsoft.reporting.winforms.reportparameter.reportparameter (v = vs.100) .aspx) có thể lấy một mảng int . Hãy thử 'reportParameter mới (" storeSelected ", new [] {" 2 "," 3 "," 4 "}, false)'. –

Trả lời

6

Dựa trên documentation by Microsoft, dòng mã này nên đọc:

MyReportViewer.ServerReport.SetParameters(
    new ReportParameter("storeSelected", new string[] { "2", "3", "4" }, false) 
); 
+0

'+ 1' Có vẻ tốt cho tôi .. cũng như những gì tài liệu nêu rõ – MethodMan

+0

Thật không may nó không hoạt động vì storeSelected là kiểu int có thể lấy nhiều giá trị. Đã ném một lỗi "Không thể chuyển đổi loại 'chuỗi' thành 'int'". – Bill

+0

@YongkeBillYu, mã bạn đã có trước đây không thể được biên dịch trừ khi bạn đang sử dụng một thư viện khác. –

Các vấn đề liên quan