2009/07/10

MS Chart Control 設置

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

1. 修改 web.config 檔

在 system.web 的 httpHandlers 區塊加入以下設置:
<br>&lt; 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"&gt;<br>

在 system.webserver 的 handlers 區塊加入以下設置:
<br>&lt; 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"&gt;<br>


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

p.s. 若無建立此暫存資料夾,會出現錯誤訊息:

圖表處理常式組態中有無效的暫存目錄 [c:\TempImageFiles]。

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

絕對路徑:
<br>&lt; key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;"&gt;<br>&lt; key="ChartImageHandler" value="storage=memory;timeout=20;dir=c:\TempImageFiles\;"&gt;<br>&lt; key="ChartImageHandler" value="storage=session;timeout=20;dir=c:\TempImageFiles\;"&gt;<br>

相對路徑:
<br>&lt; key="ChartImageHandler" value="storage=file;timeout=20;url=~/TempImageFiles/;"&gt;<br>

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

以上為基本設定

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

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


參考資源: