Дизайнер настаивает на " системе.Сеть.ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.WebControls', которого не существует
Я столкнулся со странной проблемой: я пытаюсь перенести ASP.NET 4.0 веб-сайт в an ASP.NET веб-приложение. Функция Visual Studio "конвертировать в веб-приложение" на самом деле работала довольно хорошо, но единственное, что не работает, - это ссылки на диаграммы. Я получаю ошибку:
Тип или имя пространства имен "Chart" не существует в пространстве имен
- Система.Сеть.ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.WebControls '
От В.файл конструктора. Дизайнер автоматически создает это тип кода:
protected global::System.Web.UI.WebControls.Chart ClientHoursPie;
Основываясь на исследованиях, которые я провел, правильное пространство имен 4.0 для использования для диаграмм-System.Сеть.ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.DataVisualization.Картирование. Я добавил в сеть следующие компоненты.config (скопирован с оригинального сайта, который работал нормально):
<httpHandlers>
<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" validate="false"/>
</httpHandlers>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
</compilation>
Я могу исправить пространства имен в файлах конструктора, но каждый раз, когда файл aspx сохраняется, конструктор возвращается к старому пространству имен.
Я хотел бы избежать необходимости перестраивать всю индивидуальность. страницы с нуля. Есть ли где-то место, которое я пропустил?
Заранее благодарю.
1 ответ:
Я смог решить эту проблему, добавив несколько записей в web.конфиг, который я пропустил. Любой, кто испытывает эту проблему, должен убедиться, что вы включаете:
<pages> <controls> <add tagPrefix="asp" namespace="System.Web.UI.DataVisualization.Charting" assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> </controls> </pages>И это (в системе.раздел веб-сервера):
<handlers> <remove name="ChartImageHandler"/> <add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> </handlers>
Comments