20120318

ASP.NET - 加入Chart控制項後,出現HTTP Error 500.23 錯誤

說明

今天在寫一隻記錄女兒生長記錄的ASP.NET程式的時候,出現了以下錯誤:

201200318-1-ASP.NET-加入Chart控制項後,出現HTTP Error 500.23錯誤-W

在此之前,我只不過是在網頁上加入了Chart控制項,有可能是這個問題嗎?

 

網頁上已經有提供了幾種解決方式:

1. 將定義Chart的Configuration移到system.webServer區段。

2. 或是將system.webServer/validation@validateIntegratedModeConfiguration改為「false」。

3. 或是將應用程式改至Classic Application Pool。

 

 

解決方法

試了第一種方法之後,果然成功地解決了這個問題。

也就是將原本放在system.web的設定

  1: <system.web>
  2: 
  3: <httpHandlers>
  4: 
  5: <add path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
  6: 
  7: validate="false" />
  8: 
  9: </httpHandlers>
 10: 

將它改放到system.webServer(其實本來就有了,所以我就把system.web的設定給隱藏起來),這樣就解決了這個問題囉。

  1: <system.webServer>
  2: 
  3: <handlers>
  4: 
  5: <remove name="ChartImageHandler" />
  6: 
  7: <add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST"
  8: 
  9: path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
 10: 
 11: </handlers>
 12: 
 13: </system.webServer>
 14: 

完成。

 

 

參考

[IIS]IIS7.0發生An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode.錯誤

Error: An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode

沒有留言: