"Ajax" не существует в пространстве имен "System.Web.Mvc"
Я новичок в ASP.NET MVC 5, и я хотел создать небольшой проект, чтобы понять некоторые вещи.
Когда я открыл проект в браузере, я получил сообщение об ошибке:
Compiler Error Message: CS0234: The type or namespace name 'Ajax' does not exist in the namespace 'System.Web.Mvc' (are you missing an assembly reference?)
Source Error:
Line 22: using System.Web.WebPages;
Line 23: using System.Web.Mvc;
Line 24: using System.Web.Mvc.Ajax;
Line 25: using System.Web.Mvc.Html;
Line 26: using System.Web.Routing;
После некоторого googling я узнал, что вам нужно было изменить "Копировать локальную" на true, но я увидел, что в моем проекте уже установлено значение true. Даже после чистки и восстановления эта ошибка сохраняется.
И есть ли у кого-нибудь представление о том, что может вызвать эту ошибку?
Ответы
Ответ 1
Я думаю, что вы ссылаетесь на более старую версию System.Web. Щелкните правой кнопкой мыши проект в vs и выберите "Управление пакетами NuGet", затем найдите Asp.Net MVC и нажмите "Установить". Это установит правильный System.Web с Ajax. Вы можете удалить шесть других загруженных файлов, если они не нужны.
Ответ 2
Используя MVC 5.2.3, я столкнулся с той же проблемой; он был несовместим (эта ошибка не вышла извне, не внося никаких изменений, поскольку приложение компилировалось и работало гладко раньше)
Fix:
- Щелкните правой кнопкой мыши Решение и выберите " Управление пакетами NuGet для
Решение "
- Удалите ASP.NET MVC, выбрав Удалить кнопку
- Отмените выбор Project, который использует ASP.NET MVC - нажмите Ok
- Теперь установите ASP.net MVC, найдя его в окне NuGet под
Вкладка "Интернет" и установить ее для проекта, она была отменена для
ранее
- Это должно решить проблему, как и для меня. Наслаждайтесь!
Ответ 3
Запуск Install-Package Microsoft.AspNet.Mvc
в консоли диспетчера пакетов NuGet помогло.
Ответ 4
Заново откройте Visual Studio в режиме администратора.
Ответ 5
Я обновил MVC из консоли диспетчера пакетов NuGet и решил свою проблему