Файл метаданных Visual Studio 2017 EntityFramework.dll не найден - PullRequest
0 голосов
/ 26 марта 2019

Я работаю над программой на C #, которая использует EntityFramework, я клонировал программу из git repo, но теперь она имеет ужасную ошибку Metadata file 'EntityFramework.dll' could not be found. Я искал и пробовал бесчисленные предложения для такого рода проблемы, но ни один не помог. Я уже проверил, что ссылка на EntityFramework.dll в файлах .csproj верна и определенно находится в папке packages\EntityFramework.6.2.0\lib\net45\. Поэтому я не уверен, что еще можно попробовать.

Ответы [ 4 ]

0 голосов
/ 27 марта 2019

Хорошо, я решил эту проблему. Вот что случилось. По-видимому, при клонировании в локальный каталог одна из папок на пути имеет пробел в своем имени (например, My DSS), и эта проблема с nuget , кажется, указывает на неспособность nuget найти пакет с пробелом в пути. Итак, как только я изменил имя этой папки на MyDSS, она успешно скомпилировалась.

0 голосов
/ 27 марта 2019

В Visual Studio, сверху, нажмите Build -> Configuration Manager.Убедитесь, что флажок сборки рядом с вашим проектом установлен.Если он уже есть, снимите флажок и снова проверьте его.Очистите ваше решение и постройте его снова после этого.

0 голосов
/ 27 марта 2019

Обычно это происходит, когда команды регистрируют файлы, которые не следует регистрировать (например, файл .suo), или «оптимизируют» свои сборки для исключения редко изменяемых проектов.(снимите флажки в проектах в диспетчере конфигурации.)

Другая распространенная причина отсутствия ссылок - это когда разработчики ссылаются на зависимость из папки / bin вместо папки пакетов, но, похоже, вы подтвердили, что это не такдело.

Другие вопросы, такие как Файл метаданных '.dll' не найден перечислите ряд вещей, которые нужно проверить, поэтому ваша проблема наверняка будет одной из них.Попробуйте построить каждый проект индивидуально, работая от проектов, не имеющих проектных зависимостей, выше, чем основной проект (ы) приложения.Убедитесь, что они используют одинаковые версии .Net, проверьте пакеты NuGet решения на наличие зависимостей с «несколькими версиями» и объедините их так, чтобы решение использовало одну версию каждой зависимости.(как правило, подходит для очистки). Также посмотрите на файлы .config для перенаправления версий, которые иногда зомбируются в системе контроля версий.

0 голосов
/ 26 марта 2019

пожалуйста, посмотрите на папку bin, иногда dll там не существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...