我準備把我在另一個Blog上的隨筆都挪到這裡。以下是其中一篇,當時用的應該是VS2005的RTM版了,我不知道現在是否還有這個問題。
最近做的專案需要根據資料繪製折線圖,於是就想利用VS2005自備的報表工具來做。一開始很順利,後來發現頁面繪製的圖表,不能隨參數變化而變化,為此折騰了大半個下午,真是陰溝裡翻船,最後發現缺少對ReportViewer.LocalReport.Refresh 的調用,加班讓我腦袋混沌了很多……
不過到現在還弄不明白的是,在發布系統的時候出現的問題。我是直接利用VS2005的publish 功能發布系統,它採用預編譯的方式,我去掉了“Allow this precompiled site to be updatable”選項,發佈到伺服器上去之後,報表無法顯示,經過一些測試,發現原因可能是無法找到報表檔案路徑,為此,我將aspx頁面中的ReportPath改成相對位址,還是不行;後來去掉aspx檔案中的ReportPath屬性,改在cs檔案中利用Server.MapPath方法,結果還是不行。實在沒有辦法,只好將「Allow this precompiled site to be updatable」選項選中,publish,然後伺服器上報表檔案可用了,選中這個選項,我想可能會對效能有些許影響,但是目前進度很近,也只能先這樣了,如果以後找到了這個問題的答案,我會在此補充。
[2006-2-13]編輯:
看來可能找到原因了,在publish的預編譯後,報表文件在發佈到伺服器後和其他aspx文件等一樣變成了一種「marker」文件,只要把原來的報表檔案覆蓋掉這個「marker」檔案就可以了。這或許也算是VS2005的問題?
http://www.cnblogs.com/Ricky81317/archive/2007/01/10/616974.html