User.NonRoamableId Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die nicht roamierbare ID des Benutzers ab.
public:
property Platform::String ^ NonRoamableId { Platform::String ^ get(); };
winrt::hstring NonRoamableId();
public string NonRoamableId { get; }
var string = user.nonRoamableId;
Public ReadOnly Property NonRoamableId As String
Eigenschaftswert
Die nicht roamierbare ID des Benutzers.
Beispiele
In diesem Beispiel wird gezeigt, wie Sie die NonRoamableId speichern, wenn eine App angehalten wird, und dann die NonRoamableId abrufen, wenn die App aktiviert ist. Die NonRoamableId wird dann verwendet, um das User-Objekt abzurufen, das als aktueller Benutzer festgelegt ist. Dieser Code wird in App.xaml.cs platziert, und fremder Code wurde entfernt.
User ActiveUser = null;
protected async override void OnLaunched(LaunchActivatedEventArgs e)
{
// ... code removed ...
if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
{
//TODO: Load state from previously suspended application
var localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
if (localSettings.Values.ContainsKey("previousUser"))
{
var previousId = (string)localSettings.Values["previousUser"];
ActiveUser = User.GetFromId(previousId);
}
else
{
IReadOnlyList<User> users = await Windows.System.User.FindAllAsync();
ActiveUser = users[0];
}
}
// ... code removed ...
}
private void OnSuspending(object sender, SuspendingEventArgs e)
{
var deferral = e.SuspendingOperation.GetDeferral();
//TODO: Save application state and stop any background activity
// If the user is authenticated and not a guest, save the
// NonRoamableId so we can retrieve this specific user later.
var localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
if (ActiveUser != null &&
(ActiveUser.AuthenticationStatus != UserAuthenticationStatus.Unauthenticated) &&
(ActiveUser.Type == UserType.LocalUser || ActiveUser.Type == UserType.RemoteUser))
{
localSettings.Values.Add("previousUser", ActiveUser.NonRoamableId);
}
else
{
if (localSettings.Values.ContainsKey("previousUser"))
{
localSettings.Values.Remove("previousUser");
}
}
deferral.Complete();
}
Hinweise
In einer Mehrbenutzer-App müssen Sie sich möglicherweise daran erinnern, mit welchem Benutzer die App gearbeitet hat, bevor die App deaktiviert oder angehalten wurde. Sie können die NonRoamableId speichern und dann als Schlüssel verwenden, um das Benutzerobjekt bei der Aktivierung erneut abzurufen (siehe User.GetFromId).
Die NonRoamableId für ein Benutzerobjekt ist eine Zeichenfolge, die für das Gerät, die App und den Benutzer eindeutig ist. Es kann nicht auf andere Geräte oder andere Apps übertragen werden. Wenn sich der Benutzer remote anmeldet, was zu einem anderen User.Type-Wert führt, ist die NonRoamableId außerdem anders.