Win2008 サーバーに MSCharts をインストールしようとしました。問題なく取り付けられました。次に、configに書きました。
しかし、グラフのあるページを開こうとすると、次のエラーが返されました。リクエスト タイプ「GET」の HTTP ハンドラが見つかりませんでした
問題について何か考えはありますか?
これは、Windows 7 上の ASP.NET 4.0 / IIS 7.5 に必要なものです。
web.config には以下が含まれている必要があります。
<appSettings>
<add key="ChartImageHandler" value="storage=file;timeout=20;" />
</appSettings>
<compilation targetFramework="4.0">
<assemblies>
<add assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
</compilation>
<system.webServer>
<handlers>
<add name="ChartImg" verb="*" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</handlers>
</system.webServer>
aspx ページの上部にもこれが必要です。
<%@ Register Assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Namespace="System.Web.UI.DataVisualization.Charting" TagPrefix="asp" %>
お役に立てれば
Danilが言ったように、IIS7 ではハンドラーを配置する必要があります。
<system.webserver>
<handlers>
最後のアドイン ハンドルの後に次の 2 行を追加します。
<add name="ChartImg" verb="*" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<add name="ReportViewer" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler,Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
解決策はWeb構成にありました。IIS7 では、system.webserver 内ではなく system.webserver 内にハンドラーを記述する必要がありました。したがって、ハンドラーを移動し、必要になったときに name 属性を追加するだけです。
MSCharts については何も知りませんが、アプリの AppPool を「Classic .NET AppPool」に変更してみてください。
または、web.config を変更してハンドラーを追加する必要がある場合もあります。Rick Strahl の投稿はこちら.