13

Sto scrivendo un'app di pivot Silverlight in VS2010 per Windows Phone. Ho appena aggiunto il codice di esempio da msdn here. Ora ogni volta che ricarico il designer ottengo un'eccezione:Impossibile determinare l'identità dell'applicazione del chiamante?

Impossibile determinare l'identità dell'applicazione del chiamante.

a System.IO.IsolatedStorage.IsolatedStorage.InitStore (portata IsolatedStorageScope, Tipo appEvidenceType)

a System.IO.IsolatedStorage.IsolatedStorageFile.GetStore (portata IsolatedStorageScope, Tipo applicationEvidenceType)

a System.IO .IsolatedStorage.IsolatedStorageSettings.get_ApplicationSettings() a SettingsSample.AppSettings..ctor() in C: \ .. Settings.cs: linea 34

Si tratta di un bug in Visual Studio/SDK di Windows Phone?

Questo è il codice nel costruttore in linea 34:

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

ho aggiunto il try-catch per vedere cosa stava succedendo.

Sospetto che Visual Studio (il chiamante) stia tentando di eseguire il codice ma non è associata alcuna applicazione (identità dell'applicazione), quindi non riesce. Può essere?

Qualche idea?

risposta

30

È necessario aggiungere un controllo a DesignerProperties.IsInDesignTool a tale codice poiché l'accesso a IsolatedStorageSettings in Visual Studio o Expression Blend non è valido.

if (!System.ComponentModel.DesignerProperties.IsInDesignTool) 
{ 
    settings = IsolatedStorageSettings.ApplicationSettings; 
} 
+0

Perfetto grazie! – Lemontongs

Problemi correlati