Visual Studio 2013 Ошибка скаффолдинга
Я использую VS 2013 RTM Ultimate, и когда я пытаюсь добавить контроллер в свой проект MVC 5, я получаю следующую ошибку:
"Произошла ошибка при запуске выбранного генератора кода:" Параметр searchFolders не содержит записей. Предоставьте хотя бы одну папку для поиска файлов ".
Ни один из скаффолдеров не работает в принципе, все выдают одну и ту же ошибку... Пробовал перебазирование / очистка и т.д. и все равно получал ошибку.
Обновление 28 октября: похоже, это проблема с установленным T4Scaffolding. Похоже, они работают над исправлением.
12 ответов
Если вы недавно установили пакет с зависимостью T4Scaffolding (например, MVCMailer использует T4Scaffolding.Core), то вы можете удалить T4Scaffolding.Core и перезапустить VS 2013. Обратите внимание, что MvcMailer, вызвавший это в моем случае, не будет работать в 2013 году. Лучший это проверить ваши ссылки или пакеты для подозреваемых.
Из комментариев: Удаление, похоже, не сработало для меня, поэтому я удалил пакеты /T4Scaffolding с диска *, и тогда это сработало. (Джаред Тирск)
Я использовал консоль диспетчера пакетов для удаления MVCScaffolding, T4Scaffolding и T4Scaffolding.Core в соответствии с их зависимостями. Перезапустите VS2013 и все заработает.
Я сталкиваюсь с той же ситуацией с вами. что я сделал
откройте package.config удалить T4Scaffolding.Core и T4Scaffolding
Переустановите эти пакеты Install-Package T4Scaffolding и Install-Package T4Scaffolding.Core
Закройте VS2013 и снова откройте, и вы сможете снова создать эшафот
Удачи!
Эта ситуация возникает, когда у вас уже есть T4Scaffolding, используемый в одном из ваших проектов в решении, и вы добавили веб-проект позже. Удаление T4Scaffolding и T4Scaffolding.Core из консоли диспетчера пакетов решило проблему. Каким-то образом я потерял ссылку на EntityFramework и при удалении леса, поэтому мне пришлось снова добавить ссылку на EntityFramework.
Обычно после того, как я установил несколько новых пакетов самородков, я сталкиваюсь с этой ошибкой, например, при попытке добавить / очистить новый контроллер. Мое решение просто перезагрузить VS2013
В моем случае исправление сработало, но у меня было два проекта в одном решении VS, а в одном, где я пытался добавить контроллер скаффолдинга, не было установлено приложение T4Scaffolding. Это было частью второго проекта. Когда я выгрузил второй проект и перезапустил IDE, ошибка исчезла.
Откройте установщик Visual Studio, щелкните ASP.NET и веб-разработка, выберите параметры ниже и перезапустите Visual Studio.
Это обязательно сработает.
Мое решение состояло в том, чтобы открыть установщик VS, а затем перейти к изменению и установке шаблонов .net framework.
Установите предварительный выпуск MvcMailer для VS2013 (запустите VS от имени администратора) https://www.nuget.org/packages/MvcMailer-vs2013/4.5.1-pre
Обновление EntityFramework.
Install-Package EntityFramework -Version 6.1.2
Если у вас НЕ установлены пакеты MVCScaffolding или T4Scaffolding, и вы столкнулись с этой ошибкой / проблемой, проверьте мое решение здесь:
Контроллер скаффолдинга не работает с Visual Studio 2013, обновление 2
Подводя итог: проблема может быть вызвана строкой соединения. В моем случае я использовал localdb, я переключился на строку подключения к стандартному серверу sql, затем попытался сгенерировать контроллер с представлениями MVC, и это сработало.
Я попытался переключить обратно строку подключения на localdb, это не сработало. Так что это должно быть проблема...