Магазин метаданных "CurrentBind" недействителен. ошибка - PullRequest
5 голосов
/ 04 ноября 2010

В контексте приложения, запускаемого нажатием одной кнопки, которое локально отлаживается, за исключением исключения на «Брошенном», включенном в VS2010, возникла следующая ошибка:

Deployment Exception: "Store metadata "CurrentBind" is not valid."
   at System.Deployment.Application.ComponentStore.GetPropertyString(DefinitionAppId appId, String propName)

когда я выполняю следующую строку кода:

if (System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed)

Это исключение перехватывается и обрабатывается кодом .net, и приложение не будет аварийно завершать работу после возникновения этой ошибки. К сожалению, за этой ошибкой следует:

InvalidDeploymentException: "Application is not installed"
       at System.Deployment.Application.ApplicationDeployment..ctor(String fullAppId)

Если я продолжу изучать исключения, я получу еще одну ошибку:

SynchronizationLockException: "Object synchronization method was called from an unsynchronized block of code"
       at Microsoft.Practices.Unity.SynchronizedLifetimeManager.TryExit()
@ ProvidedContainer.RegisterInstance(LoggerFacade);

и наконец:

ConfigurationErrorsException: "This element is not currently associated with any context"
    at System.Configuration.ConfigurationElement.get_EvaluationContext()

в конструкторе

[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
public partial class InfrastructureDataServiceClient : System.ServiceModel.ClientBase<Infrastructure.DataServices.IInfrastructureDataService>, Infrastructure.DataServices.IInfrastructureDataService 
    {
        public InfrastructureDataServiceClient() {
    }
}

Все эти ошибки обрабатываются кодом .net Framework и не распространяются в приложении, но пока у меня есть возможность разбить исключение "Выкинутый", я продолжаю обрабатывать эти ошибки, пока не потерял терпение и выберите разрыв только для необработанных исключений, после чего приложение полностью загрузится.

Это случалось со мной в прошлом, и в то время мне приходилось полностью переустанавливать visual studio, но после этого все работало нормально. Я бы предпочел не делать этого, так как это отнимает много времени, и моя установка VS довольно настраивается. Кроме того, мои коллеги не сталкиваются с той же ошибкой, поэтому это говорит о том, что в моей среде есть что-то уникальное.

Я недавно столкнулся с визуальным зависанием студии при отладке, и мне пришлось убить процесс devenv, который мог бы сыграть свою роль, но трудно сказать, потому что я недавно включил опцию break on throw. Я уже пытался удалить файлы suo, но это не имело никакого эффекта.

У меня установлены следующие дополнения: Resharper, .Net Reflector, Team Explorer, TFS Power Tools, Менеджер тем

Ответы [ 3 ]

2 голосов
/ 28 августа 2011

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

Я должен добавить, что мне пришлось добавить исключение вручную в мой список отладки / исключений - оно не появилось по умолчанию.

1 голос
/ 29 августа 2011

Для решения этой проблемы я переустановил Visual Studio.После этого исключения исчезли.

0 голосов
/ 12 марта 2013

В моем случае я просто сбрасываю текущие настройки в меню Инструменты / Импорт и Экспорт настроек в Visual Studio 2010. Я надеюсь, что это работает для вас!

...