Microsoft Chartコントロールで「ChartImg.axd の子の要求を実行中にエラーが発生しました」のエラーに対する対策
ASP.NETでMS Chartコントロールを使用して実行しようとした際、以下の様なエラーに遭遇する事があります。2種類まとめて書いてしまいます。
ChartImg.axd の子の要求を実行中にエラーが発生しました。
説明: 現在の Web 要求を実行中に、ハンドルされていない例外が発生しました。
エラーに関する詳細および例外の発生場所については、スタック トレースを参照してください。
例外の詳細: System.Web.HttpException: ChartImg.axd の子の要求を実行中にエラーが発生しました。
要求の種類 'POST' の http ハンドラが見つかりませんでした。
説明: 現在の Web 要求を実行中に、ハンドルされていない例外が発生しました。
エラーに関する詳細および例外の発生場所については、 スタック トレースを参照してください。
例外の詳細: System.Web.HttpException: 要求の種類 'POST' の http ハンドラが見つかりませんでした。
自分の場合、開発を進めていると突如このエラーに見舞われ、それまで正常に実行できていたページのChartまで同様のエラーで動かなくなりました。
冒頭のエラーメッセージでググると、幸い以下のサイトが発見でき、無事に解決できました。
みみたんのメモWiki - プログラミング/CSharp/ASP.NET/Microsoft Chart Controls - @ウィキモバイル
よくまとめられているため補足の必要はありませんが、自分のおこなった対策を簡単にまとめてみました。
基本的に、web.config内の記述がポイントになるようです。
内に以下の行を追加(または書き換え)。 内に以下の行を追加(または書き換え)。 内に以下の行を追加。
(dirを実在するディレクトリを書きなおす)
自分の環境ではPostback実行後にChartを実行していたため、1と2で「GET,HEAD,POST」と書きなおす必要がありました。