VS2008移到VS2010 的 Crystal Report
當原先使用VS2008所架設有Crystal Report 報表的網站,
使用VS2010開啟時,會發現出現組態錯誤的訊息,
再加上Crystal Report 在VS2010又被拿掉了,該如何處理這個狀況?
(點下圖可看到完整圖片)
在VS2008裡面,Crystal Report 的版本是10.5版,
在VS2010裡面,Crystal Report 的版本是13.0版,此版本可以從http://www.businessobjects.com/jump/xi/crvs2010/us2_default.asp來下載。
依自己Windows的位元或需求下載好之後,安裝Crystal Report 13.0版。
接著開啟web.config檔,搜尋找到"<assemblies>"標籤,在後面會發現幾段關於Crystal Report載入版本等訊息,
將所有VS2008的版本(10.5.3700.0)改為13.0.2000.0,
或將那幾段Crystal Report刪除,用下列語法覆蓋掉
<add assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.ReportSource, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/><add assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
上面的問題解決之後,重新執行網頁,開啟報表時將會發現有另一個錯誤訊息,如下圖(點圖可看到完整圖片)
解決辦法與上面的方法一樣,將Version=10.5.3700.0改成Version=13.0.2000.0
儲存之後,再執行一次,網頁將正常執行。
參考或是複製語法時,別忘了留個言喔 ^ ^ ~