[C#]解決ReportViewer報表發生「系統找不到檔案」的錯誤及「處理本機報表時發生錯誤」

解決ReportViewer經常發生「系統找不到指定檔案」和「處理本機報表時發生錯誤」。

程式使用ReportViewer產生報表,在客戶電腦上執行,
卻發生系統找不到指定檔案的錯誤訊息:
「Could not load file or assembly 'Microsoft.ReportViewer.Common,
Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd80cc91'
or one of its dependencies. 系統找不到指定的檔案。」

經查詢後,由於我使用的ReportViewer版本為12,
客戶電腦需要安裝「MICROSOFT REPORT VIEWER 2015 RUNTIME

在安裝「MICROSOFT REPORT VIEWER 2015 RUNTIME」之前,
必須先安裝「SQLSysClrTypes.msi」。


安裝完成後,又出現「處理本機報表時發生錯誤
原來是程式中的rdlc檔案路徑設定錯誤:

reportViewer.LocalReport.ReportPath = @"..\..\Report1.rdlc";

在使用Visual Studio 2015執行上述路徑是沒有問題,
但是打包成exe檔後,由於路徑錯誤而當機。
因此決定將rdlc檔設定「複製到輸出目錄」為「一律複製」,
再將路徑改為:

reportViewer.LocalReport.ReportPath = "Report1.rdlc";

問題才解決。