Сегодня утром я столкнулся с проблемой при открытии своего решения Visual Studio, и когда я попытался запустить его, он сказал:
Не найдено ни одного экспорта, соответствующего имени контракта ограничения
Как я могу решить эту проблему?
Сегодня утром я столкнулся с проблемой при открытии своего решения Visual Studio, и когда я попытался запустить его, он сказал:
Не найдено ни одного экспорта, соответствующего имени контракта ограничения
Как я могу решить эту проблему?
Ответы:
Я решил эту проблему путем очистки кэша модели компонентов Visual Studio.
Просто удалите или переименуйте эту папку:
%LocalAppData%\Microsoft\VisualStudio\11.0\ComponentModelCache
или
%LocalAppData%\Microsoft\VPDExpress\11.0\ComponentModelCache
и перезапустите Visual Studio.
Версия Visual Studio, которую вы используете, определяется числом, например
Visual Studio 2012 11.0
(как показано выше)
Visual Studio 2013 - это 12.0
Visual Studio 2015 - это 14.0
Visual Studio 2017 - это 15.0
Visual Studio 2019 является 16.0
Для тех, кто не знает: так
%LocalAppData%\
же, какC:\Users\{yourUsername}\AppData\Local
Для тех, у кого установлено несколько версий Visual Studio, например 2012 и 2013, может быть полезно удалить ComponentModelCache для обеих версий перед перезапуском Visual Studio, например, 11.0 и 12.0.
Нет необходимости переименовывать или удалять всю папку:
(%AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache)
Просто переименуйте или удалите Microsoft.VisualStudio.Default.cache
файл в указанном выше месте.
Visual Studio Express 2012 имеет разные пути.
Visual Studio Express
С Visual Studio Express 2012 для Интернета
Мне не пришлось переустанавливать Visual Studio Express
Это будет действительно работать как чемпион:
Решение: Попробуйте удалить папку ComponentModelCache из расположенного ниже.
[C:]\Users\[your user name]\AppData\Local\Microsoft\VisualStudio\[Visual Studio version number]
И после успешного удаления заново создайте папку с тем же именем «ComponentModelCache».
Удаление кэша компонентной модели у меня не сработало (ну, относительный каталог, указанный выше, не существовал на моей машине). Вместо этого я установил расширение для Visual Studio 2012 Express . Меню Инструменты → * Расширения и обновления ... ** → Онлайн → Выберите любой и затем загрузите. Это, очевидно, делает недействительным кеш, заставляя Visual Studio его перестраивать.
Вот мой источник .
Эта проблема может быть решена путем удаления или очистки всех папок и файлов из %AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
Это на самом деле очищает кэш модели компонентов Visual Studio.
На машинах с Windows 7 путь другой. При вводе %appdata%
в диалоговом окне « Выполнить » открывается папка C:\Users\<username>\AppData\Roaming
.
Нажмите кнопку «вверх», чтобы перейти к родительской папке и выбрать папку «Local».
Конечный путь: C:\Users\<username>\AppData\Local\Microsoft\VisualStudio\11.0\ComponentModelCache
для Visual Studio 2012 и более поздних версий решением должно быть удаление содержимого папки ComponentModelCache
:
C:\Users\[username]\AppData\Local\Microsoft\WDExpress\11.0\ComponentModelCache
Visual Studio 2013
C:\Users\[username]\AppData\Local\Microsoft\VisualStudio\12.0\ComponentModelCache
Для Visual Studio 2013 вам нужно удалить эту папку из этого пути:
%AppData%\..\Local\Microsoft\VisualStudio\12.0
'visual c++ package' failed to load
У меня возникла та же проблема при запуске Visual Studio 2013 Ultimate, и решения, которые здесь были, не сработали для меня. Я попытался удалить указанные папки и снова запустить Visual Studio, но это не сработало.
Однако у меня были и другие проблемы: например, пакет Microsoft.visual studio не загружался правильно, а также страница '312e8a59-2712-48a1-863e-0ef4e67961fc' не обнаружена в VS 2012 . Последнее относится к сообщению в окне Team Explorer, в котором говорится, что «страница« somenumber »не может быть найдена».
Поэтому я запускаю devenv /setup
в командной строке Visual Studio с правами администратора. Он сделал свою работу, и теперь все в порядке.
Очистка папок не работает для меня. Поэтому я перешел к пункту «Программы и компоненты» и использовал кнопку изменения для запуска установки Visual Studio 2013.
В настройках я выбираю функцию восстановления, и это решило проблему для меня.
У меня была такая же проблема с Visual Studio Express 2013 из Windows 8.1.
К сожалению, в папке
% AppData% .. \ Local \ Microsoft \ VisualStudio \ 12.0 \ ComponentModelCache не было папки «ComponentModelCache» .
Я нашел папку «ComponentModelCache» в
.. \ Users [имя пользователя] \ AppData \ Local \ Microsoft \ WDExpress \ 12.0
и решил эту проблему, удалив эту папку оттуда.
Если у вас VS 2013, вам нужно перейти по адресу : % LOCALAPPDATA% \ Microsoft \ VisualStudio \ 12.0 и переименовать папку ComponentModelCache.
Я столкнулся с подобной проблемой после некоторых обновлений, выпущенных от Microsoft (часть из них, где о .NET Framework 4.5).
В Интернете я получил следующую ссылку на статью базы знаний Microsoft:
Обновление для Microsoft Visual Studio 2012 (KB2781514)
Это сработало для меня.
Это случилось со мной в Visual Studio 2013 Web, после того как Windows установила несколько обновлений. К сожалению, ни одно из предложений в этой теме не помогло.
Пришлось перезапустить установщик и выбрать опцию «Ремонт». После этого (и перезагрузка) снова заработало.
В некоторых случаях вам может потребоваться восстановить несколько версий Visual Studio. Один из примеров - когда элемент управления «Задача сценария» в VS 2013 открывает VS 2012, когда вы нажимаете «Изменить сценарий».
Переименование папки ComponentModelCache у меня работало в Visual Studio 2015, но с несколько другим путем:
%AppData%\..\Local\Microsoft\VisualStudio\14.0\ComponentModelCache
У меня Windows 7 x64 со вторым разделом, на котором установлена Windows 8 (предварительный просмотр установлен). Работая с Microsoft Visual Studio Express 2012 для Windows Phone, я столкнулся с той же проблемой. Но ComponentModelCache находится здесь:
C: \ Users \ Jayaram \ AppData \ Local \ Microsoft \ VPDExpress \ 11,0
Я не могу удалить или переименовать, когда я получаю сообщение «доступ запрещен», когда я пытаюсь использовать командную строку:
Администратор: VS2012 X64 CrossToolsCommandPrompt
Эта проблема из-за повреждения кэша MEF. Установка расширения обратной связи (или установка любого расширения) приведет к аннулированию кэша, в результате чего VS перестроит его.
Я использую Visual Studio 2012. После установки веб-экспресса Visual Studio 2013, когда я хочу запустить или открыть какой-либо проект в Visual Studio 2012, появляется следующая ошибка:
« Никакого экспорта не было обнаружено , что совпадает с именем контракта ограничение» .
Я также попробовал вышеупомянутое решение для очистки ComponentModelCache , но я не нашел папку. Я решаю свою проблему просто: Ремонт Visual Studio 2012
Для версий программного обеспечения Express нужная папка находится в немного другом месте: для Express 2012 для Интернета она отсутствует, а C:\Users\XXXXXXXX\AppData\Local\Microsoft\VWDExpress
не в папке Visual Studio.
Я столкнулся с этой проблемой в Microsoft Visual Studio Express 2012 для Windows Phone при попытке открыть файл.
Затем я просмотрел
C: \ Users \ MyUserName \ AppData \ Local \ Microsoft \ VPDExpress \ 11,0 \ ComponentModelCache
И внутри ComponentModelCache я удалил файл CACHE Microsoft.VisualStudio.Default.cache. Наконец я перезапустил визуальную студию и снова открыл свой проект.
Тогда моя проблема была решена, я смог открыть файл.
Примечание. Моя ОС - Windows 8. И я установил SDK 8 для разработки приложения для Windows Phone.
Спасибо
Я получил ошибку с тем же сообщением об ошибке - два года спустя. На этот раз это другая проблема, связанная с .NET Core dnx.
Я не смог найти ответ по переполнению стека, но есть проблема GitHub, которая содержит обходной путь: https://github.com/aspnet/Home/issues/1455
Ниже приведена наиболее важная часть обходного пути:
- Удалить весь
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web Tools\DNX
каталог. (Насколько я понимаю, он относится к старой версии ASP.NET Core RC1, которая по некоторым причинам все еще поставляется даже с Visual Studio 2015 Update-3).- Удалить
C:\Users\<user>\AppData\Local\Microsoft\VisualStudio\14.0\devenv.exe.config
файл.- Запустите командную строку разработчика для Visual Studio 2015 от имени администратора и выполните
devenv /setup
команду. Создается новый файл devenv.exe.config. На этот раз есть много сборок, которые ссылаются наC:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\DotNet
каталог.- Запустите Visual Studio 2015 и убедитесь, что в нем отображаются основные инструменты Microsoft .NET (предварительный просмотр 2) 14.1.20624.0 в меню «Справка => О Microsoft Visual Studio».
Спасибо посту олегбурова на GitHub за это.
Я получил эту ошибку после переустановки IntelliJ IDEA и ReSharper для C # в Visual Studio 2013.
Во-первых, у меня возникла проблема с расширениями, и после этого я получил эту ошибку:
«Не найдено экспорта, соответствующего названию контракта ограничения»
Я просто удалил папку ComponentModelCache и решил эту ошибку.
Мои 2 цента: следуя всем приведенным выше советам по спасению жизни, у меня был немного другой опыт; у меня VS VS Community Edition, установленный один раз, и я заметил, что все эти 3 папки:
%LocalAppData%\Microsoft\VisualStudio\15.0 ==> Empty
%LocalAppData%\Microsoft\VisualStudio\7f0c75b0 ==> has only the CoreCon folder
Это тот, который имеет ComponentModelCache:
%LocalAppData%\Microsoft\VisualStudio\15.0_7f0c75b0
Удаление только Microsoft.VisualStudio.Default.cache не имело никакого эффекта.
Итак, я удалил все 4 файла: .cache, .err, .external и каталоги. При перезапуске VS проблема исчезла и появился 5-й файл:
Microsoft.VisualStudio.Default.scan
Удаление ComponentModelCache
не работает для меня. Переустановка VS 2019 произошла благодаря рекомендации по этой теме поддержки Microsoft.
подробности