Невозможно определить личность вызывающего приложения? - PullRequest
13 голосов
/ 03 сентября 2011

Я пишу приложение Silverlight Pivot в VS2010 для Windows Phone. Я просто добавил пример кода из MSDN здесь . Теперь каждый раз, когда я перезагружаю конструктор, я получаю исключение:

Невозможно определить идентификатор приложения вызывающего абонента.

в System.IO.IsolatedStorage.IsolatedStorage.InitStore (область действия IsolatedStorageScope, тип appEvidenceType)

в System.IO.IsolatedStorage.IsolatedStorageFile.GetStore (область действия IsolatedStorageScope, тип applicationEvidenceType)

в System.IO.IsolatedStorage.IsolatedStorageSettings.get_ApplicationSettings () в SettingsSample.AppSettings..ctor () в C: .. \ Settings.cs: строка 34

Это ошибка в Visual Studio / Windows Phone SDK?

Это код в конструкторе в строке 34:

public AppSettings()
    {
        // Get the settings for this application.
        try
        {
            settings = IsolatedStorageSettings.ApplicationSettings;
        }
        catch (System.Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }

Я добавил try-catch, чтобы посмотреть, что происходит.

Я подозреваю, что Visual Studio (вызывающая сторона) пытается запустить код, но с приложением (идентификатором приложения) не связано, поэтому происходит сбой. Может быть?

Есть мысли?

1 Ответ

30 голосов
/ 03 сентября 2011

Вам необходимо добавить проверку к DesignerProperties.IsInDesignTool к этому коду, поскольку доступ к IsolatedStorageSettings в Visual Studio или Expression Blend недопустим.

if (!System.ComponentModel.DesignerProperties.IsInDesignTool)
{
     settings = IsolatedStorageSettings.ApplicationSettings; 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...