Используя C #, Visual Studio 2010.
В MSDN задокументировано пространство имен System.Web.Mvc . В документации для всех типов в этом пространстве имен указано, что они входят в System.Web.Mvc.dll
.
Тем не менее, когда я иду на Добавить ссылку, вкладку «.NET», эта сборка отсутствует в списке. Зачем?
Ответы:
В VS Express 2012 я не мог найти System.Web.Mvc на вкладке «сборки», но после небольшого поиска я обнаружил, что мне нужно посмотреть вкладку « сборки \ расширения », а не стандартную вкладку «сборки \ фреймворк». "таб.
источник
Could not load file or assembly...The located assembly's manifest definition does not match the assembly reference
). У меня есть другой проект в моем решении, ссылающийся на другую версию, и этот метод позволил мне только добавить ссылку на System.Web.Mvc, версия = 4.0.0.0. Метод установки NuGet добавил правильную версиюЛучший способ - использовать менеджер пакетов NuGet.
Просто обновите приведенный ниже пакет MVC, и он должен работать.
источник
У меня была такая же проблема, и я не смог найти эталонную сборку System.Web.MVC.
Наконец выяснилось, и он был расположен внутри следующего места.
Обратите внимание, если ваш VS был установлен в C: (Иногда MVC.dll находится не в папке по умолчанию, о которой все говорят, я имею в виду папку « Reference Assemblies », расположенную на диске C :.)
если его нет, то он обязательно должен быть здесь:
\ Program Files (x86) \ Microsoft ASP.NET \ ASP.NET MVC 2 \ Assemblies \ System.Web.Mvc.dll
Поэтому добавьте dll с помощью навигации или вкладки обзора в меню добавления справки.
источник
Вы также можете добавить это из консоли диспетчера пакетов Nuget, например:
Microsoft.AspNet.Mvc зависит от:
... что мне не кажется важным. В нашем случае это библиотека классов, которая существует исключительно для поддержки наших приложений Mvc. Итак, мы полагаем, что в худшем случае это мягкая зависимость.
Я определенно предпочитаю указывать на сборку в файловой системе или в GAC, поскольку обновление пакета в будущем, вероятно, будет гораздо менее болезненным, чем опыт, который я имел в прошлом со ссылками на сборку GAC и файловой системы.
источник
У меня была та же проблема, и вот забавная причина: я предполагаю, что вы ожидаете
System.Web.Mvc
оказатьсяSystem.Web
в списке ниже. Но список не алфавитный.Сначала отсортируйте список, а затем посмотрите рядом с
System.Web
.источник
Это должно быть там. По умолчанию список добавления ссылок выглядит упорядоченным, но это не так. Нажмите на заголовок имени и посмотрите еще раз.
источник
Проверьте эти шаги:
Примечание : если целевая платформа установлена на .Net Framework 4 Client Profile, она не будет указывать ссылку MVC в списке ссылок. Вы можете найти разницу между клиентским профилем .Net Framework 4 и .Net Framework 4 здесь .
источник
Я решил эту проблему с помощью поиска "MVC". System.Web.Mvc появился в результатах поиска, несмотря на то, что он не содержится в списке.
источник
Теперь желаемая сборка появилась в списке.
Я могу только предположить, что вызвало его появление, но я подозреваю, что это тот факт, что я выбрал Файл → Создать → Проект → ASP.NET Web Application , чего я никогда раньше не делал. Возможно, это вызвало некоторую позднюю инициализацию и заполнение списка дополнительными сборками для веб-разработки.
источник
Это изменилось для Visual Studio 2012 (я знаю, что оригинальный вопрос говорит VS2010, но заголовок все равно будет попадать при поиске).
При создании проекта VS2012 MVC файл system.web.mvc помещается в папку пакетов, которая является равноправной с решением. На это будет ссылка в веб-проекте по умолчанию, и вы можете найти там точный путь).
Если вы хотите сослаться на это во вторичном проекте (скажем, на вспомогательный .dll с фильтрами или другими атрибутами), то вы можете сослаться на него оттуда.
источник
Я не получил System.Web.Mvc в VS 2012, но получил в VS 2013. Используя диалог AddReference,
Или вы можете найти это в своем пути к проекту,
YourProjectName \ пакеты \ Microsoft.AspNet.Mvc.5.0.0 \ Lib \ net45 \ System.Web.Mvc.dll
источник
Я полагаю, вы обнаружите, что сборка MVC указана в файле web.config, а не в самом проекте.
Что-то вроде этого:
Ответить на ваш комментарий;
Лучший ответ, который я могу дать, - отсюда :
источник
он может быть установлен отдельно, и он не включен в фреймворк, выберите список вкладок «расширения», и он существует, есть и другие библиотеки, все в порядке, не требуется для старых библиотек и т. д., существует старые 20 30 и 4001
источник
Если у вас возникла эта проблема в Visual Studio 2017, скорее всего, вы работаете с проектом MVC 4, созданным в предыдущей версии VS, со ссылочным путем подсказки, указывающим на
C:\Program Files (x86)\Microsoft ASP.NET
. Visual Studio 2017 больше не устанавливает этот каталог.Обычно мы решаем эту проблему, устанавливая копию Visual Studio 2015 вместе с нашим экземпляром 2017 года и устанавливая необходимые библиотеки по указанному выше пути. Затем мы обновляем все ссылки в затронутых проектах, и все готово.
источник