"Метаданные хранилища" CurrentBind "недопустимы" в отладке приложения ClickOnce - PullRequest
13 голосов
/ 16 декабря 2009

Когда я пытаюсь получить доступ к «Application.CommonAppDataPath», я получаю это сообщение об ошибке:

System.Deployment: метаданные хранилища «CurrentBind» недействителен

Трассировка стека:

в System.Deployment.Application.ComponentStore.GetPropertyString (DefinitionAppId appId, String propName)

Это только в Debug. При работе в качестве действительного опубликованного приложения clickonce оно работает нормально.

Как мне избавиться от этого исключения при локальной отладке?

Ответы [ 4 ]

33 голосов
/ 15 января 2011

У меня была похожая проблема (например, комментарий jpierson) с тем же исключением: «CurrentBind» not valid »в ApplicationDeployment.IsNetworkDeployed. Я снял флажок «Параметры | Отладка | Общие | Просто мой код». После проверки все работало нормально.

ПРИМЕЧАНИЕ. В некоторых других обсуждениях предлагалось переустановить VS2010. Я сделал это, но не помогло. Я не знаю, была ли переустановка также фатором.

2 голосов
/ 07 января 2014

Я намеренно установил VS для прерывания на исключениях CLR. Вы, конечно, можете замаскировать это исключение только отладкой своего кода, но это все еще допустимая ошибка, которую я хотел бы объяснить. MS должен быть предвестником написания твердого кода.

1 голос
/ 16 декабря 2009

ApplicationDeployment.IsNetworkDeployed (в пространстве имен System.Deployment.Application) - логическое свойство, которое возвращает true, если приложение было запущено с ClickOnce.

if (ApplicationDeployment.IsNetworkDeployed)
{
    //CommonAppPath code
}

Что вы пытаетесь сделать с CommonAppDataPath? В зависимости от того, чего вы пытаетесь достичь, мы, вероятно, могли бы придумать что-то, что будет работать независимо от того, как запущено приложение.

0 голосов
/ 05 марта 2011

У меня была точно такая же проблема. Спасибо Мкале за указание в правильном направлении.

Я установил Reflector VS Addin несколько дней назад, и в какой-то момент он спросил об изменении параметра Just My Code. Я полностью забыл об этом и возился с этой проблемой последние два дня!

В то же время у меня также была проблема с FileLoadException - который сообщал в журнале Fusion, что «WRN: сравнение имени сборки привело к несоответствию: номер редакции». Изначально я решил эту проблему, установив версию сборки 1.1.0.0 вместо 1.1. *.

Однако после установки параметра «Просто мой код» все эти проблемы исчезли.

...