Hey Sto utilizzando PasswordVault per l'archiviazione delle credenziali utente nell'app di Windows 8.Verifica se PasswordVault/responsabile delle credenziali ha i dati delle app al carico
Quello che voglio che l'app faccia al caricamento è controllare se il PasswordVault/responsabile delle credenziali ha già un valore memorizzato per la mia app. se non lo fanno, non voglio che rimanga sulla pagina in modo che l'utente può effettuare il login, ma se le credenziali sono già lì poi mi vorrei per andare direttamente alla pagina 2.
Ho provato ad utilizzare il seguente codice:
private Windows.Security.Credentials.PasswordCredential GetCredentialFromLocker()
{
Windows.Security.Credentials.PasswordCredential credential = null;
var vault = new Windows.Security.Credentials.PasswordVault();
var credentialList = vault.FindAllByResource("MYapp");
if (credentialList.Count > 0)
if (credentialList.Count == 1)
credential = credentialList[0];
else
// User selecor
return credential;
}
e poi al caricamento della pagina ho
private void Page_Loaded(object sender, RoutedEventArgs e)
{
var loginCredential = GetCredentialFromLocker();
if (loginCredential != null)
this.Frame.Navigate(typeof(page2));
else
{
loginBigButton.Visibility = Windows.UI.Xaml.Visibility.Visible;
signUpButton.Visibility = Windows.UI.Xaml.Visibility.Visible;
signUpTextBlock.Visibility = Windows.UI.Xaml.Visibility.Visible;
}
}
il problema è che se non v'è alcuna credenziale memorizzato con il Resource (myapp) il codice:
var credentialList = vault.FindAllByResource("MYapp");
rendimenti:
informazioni WinRT: Non riesci a trovare delle credenziali in Vault
Ulteriori informazioni: Elemento non trovato.
grazie per la risposta rapida compagno ,,, ho provato a provare e catturare intorno ad esso già, come una delle prime cose, ma ancora getta l'eccezione .. Utilizzando RetrieveAll come troverei la proprietà delle risorse che non può vedere per farlo mostrare .. –
strano, dovrebbe prendere quell'eccezione, puoi aggiornare il tuo codice con try catch? Controlla anche http://social.msdn.microsoft.com/Forums/windowsapps/en-US/33101f6c-479f-4828-9093-f7cbe70464d7/exception-trying-to-find-passwordcredential-in-passwordvault –
Prova a utilizzare la funzione di cattura (Eccezione e) invece di specificare il tipo di eccezione – sLedgem