MSCharts «Не найден обработчик http для типа запроса« GET »» - PullRequest
30 голосов
/ 22 января 2010

Я пытался установить MSCharts на свой сервер Win2008. Устанавливается без проблем. Потом я написал в конфиге.

Но когда я пытаюсь открыть страницу с диаграммами, возвращается следующая ошибка. Не найден обработчик http для типа запроса 'GET'

Есть ли у вас какие-либо мысли о проблеме?

Ответы [ 4 ]

49 голосов
/ 21 октября 2010

Это то, что вам нужно для ASP.NET 4.0 / IIS 7.5 в Windows 7 :

Ваш 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" %>

Надеюсь, это поможет

10 голосов
/ 04 февраля 2010

Как и Данил сказал, IIS7 требует, чтобы вы поместили обработчики в

<system.webserver>
    <handlers>

Добавьте две строки ниже после последних дескрипторов надстройки

<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" />
9 голосов
/ 27 января 2010

Решение было в веб-конфигурации. IIS7 требуется для записи обработчиков внутри system.webserver, но не в system.web. Поэтому я просто перемещаю обработчик и добавляю атрибут имени, как это стало необходимым.

1 голос
/ 22 января 2010

Не знаю ничего о MSCharts, но я бы сказал, попробуйте изменить AppPool для приложения на «Классический .NET AppPool».

В качестве альтернативы вам может потребоваться изменить ваш web.config, чтобы добавить туда обработчик. Смотрите сообщение Рика Строля здесь .

...