Подтвердить что ты не робот

В сборке "SomeAssembly" используется "System.Web.Mvc, Version = 4.0.0.0", которая имеет более высокую версию, чем ссылка на сборку "System.Web.Mvc, версия 3.0.0.0

Я получил следующую ошибку ниже после открытия и компиляции проекта VS 2010.net 4.0 MVC3 в RTM VS 2012. Как я могу исправить это без обновления до MVC4?

У меня VS 2010 и VS 2012 установлены бок о бок.

Ошибка 1 Assembly 'SomeAssembly, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null' использует 'System.Web.Mvc, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35', который имеет более высокую версию чем ссылочная сборка 'System.Web.Mvc, Version = 3.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'

4b9b3361

Ответ 1

Еще одна вещь, которую нужно проверить, заключается в том, что у вас нет тестового проекта, который все еще ссылается на сборку mvc3 в решении. Вот что меня достало.

Ответ 2

Проверьте web.config. system.web/assemblies имеет версию 3.0, хотя ваши ссылки на проект 4.0.

Это было для меня.

Ответ 3

Перейдите к ссылкам, проверьте текущую версию System.web.mvc(я думаю, она все еще указывает на mvc3). Удалите их и добавьте ссылки еще раз, но на этот раз System.Web.Mvc 4.0..! Если вы используете несколько проектов в одном решении, то.. Напр. у вас есть два проекта ProjA (MVC4) и ProjB (все еще в MVC3), если ProjA имеет ссылку ProjB или использует ProjB, то он, скорее всего, даст вышеупомянутую ошибку. Возможно, вам придется изменить версии MVC в обоих проектах.

Ответ 4

Если вы используете Visual Studio, вы можете проверить наличие обновлений в своих пакетах NuGet, которые будут обновляться без необходимости запускаться вручную с помощью Web.config. Выберите инструменты → Диспетчер пакетов библиотеки → Управление пакетами NuGet для решения. Убедитесь, что вы используете самую последнюю версию MVC, выбирая обновления вдоль левой панели, а затем в списке обновлений найдите MVC и нажмите "Обновить". Как только обновление завершится, щелкните по сборке и постройте решение. Именно так я решил свою проблему, связанную с MVC и пакетом Fluent Validation NuGet. И он автоматически обновляет Web.config.

Ответ 5

Использование asp.net 4.5 и аналогичная проблема. Щелкните правой кнопкой мыши на Ссылки и выберите Управление пакетами NuGet. Проверьте, есть ли обновление для пакета с устаревшей версией. Может попросить перезаписать файлы, но это нормально.