2009/07/10

MS Chart Control 設置

在 ASP.NET 中 MS Chart Control 的設置方法

1. 修改 web.config 檔

在 system.web 的 httpHandlers 區塊加入以下設置:

< path="ChartImg.axd" verb="GET,HEAD" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false">


在 system.webserver 的 handlers 區塊加入以下設置:

< name="ChartImageHandler" precondition="integratedMode" verb="GET,HEAD" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">



2. 暫存目錄路徑設定
在 web.config 中 appSettings 的區塊中加入圖片暫存資料夾的設定
或是直接建立 c:\TempImageFiles\ 的資料夾 (預設暫存夾目錄)

p.s. 若無建立此暫存資料夾,會出現錯誤訊息:
圖表處理常式組態中有無效的暫存目錄 [c:\TempImageFiles\]。

圖表儲存方法 (storage=file|memory|session) 及目錄指定 (dir|url), 有以下方法:

絕對路徑:

< key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;">
< key="ChartImageHandler" value="storage=memory;timeout=20;dir=c:\TempImageFiles\;">
< key="ChartImageHandler" value="storage=session;timeout=20;dir=c:\TempImageFiles\;">


相對路徑:

< key="ChartImageHandler" value="storage=file;timeout=20;url=~/TempImageFiles/;">


3. 複製 System.Web.DataVisualization.dll 至 bin/ 資料夾
安裝的 Chart Control 預設放置路徑:
C:\Program Files\Microsoft Chart Controls\Assemblies
將 System.Web.DataVisualization.dll 複置至 Web 專案的 bin/ 中即可

************ 以上為基本設定 ************

頁面端需加入
< %@ Register Assembly="System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI.DataVisualization.Charting" TagPrefix="asp" %>


在程式端則需引入
System.Web.UI.DataVisualization.Charting


參考資源: