Loupe

[UWP, C#] Obtenir les informations utilisateur

Dans une application il est parfois intéressant d’obtenir les informations basiques de l’utilisateur (via la session Windows).

En WinRT nous avions accès avec la classe UserInformation à plusieurs méthodes pour connaitre le nom, le prénom, l’image … Avec le passage aux environnements Windows 10, cette classe ne fonctionne plus et ne renvoie plus aucune information mais Microsoft propose une alternative avec la classe User. Avec cette nouvelle classe, pour obtenir les informations de l’utilisateur il va falloir le faire en deux étapes :

  1. Obtenir l’utilisateur avec la méthode FindAllAsync
  2. A partir de cet utilisateur, obtenir les informations nécessaires avec la méthode GetPropertiesAsync ou la méthode GetPropertyAsync

 

Voici un exemple de comment mettre en place ces méthodes :

// Obtention de tous les utilisateurs
IEnumerable<User> users = await Windows.System.User.FindAllAsync();

// Dans mon cas je récupère le premier mais il vous faudra peut être choisir le bon
User currentUser = users.FirstOrDefault();
if (currentUser != null)
{
    // Obtention d'une information à l'unitié ici le prénom
    object firstName = await currentUser.GetPropertyAsync(KnownUserProperties.FirstName);
    Debug.WriteLine("Bonjour {0} !", firstName);

    // Obtention de plusieurs informations
    IPropertySet properties = await currentUser.GetPropertiesAsync(new string[]
    {
        KnownUserProperties.FirstName,
        KnownUserProperties.LastName
    });

    Debug.WriteLine("Bonjour {0} {1} !", properties.First(kvp => kvp.Key == KnownUserProperties.FirstName), properties.First(kvp => kvp.Key == KnownUserProperties.LastName));
}

 

Dans mon cas, l’output m’affiche :

Bonjour Teddy !
Bonjour Teddy Desmas !

La liste des informations pouvant être obtenue via ces méthodes est disponible dans la classe KnownUserProperties, à cela s’ajoute l’obtention de la photo de compte via la méthode GetPictureAsync qui pour le moment ne semble pas fonctionner, du moins chez moi (j’obtiens toujours la photo de base de Windows 10).

Voilà, j’espère que cet article vous aura aidé notamment si vous développez sous Windows 10 ou si vous portez votre application Windows 8.1 vers Windows 10.

Photo de profil

Ces billets pourraient aussi vous intéresser

Vous nous direz ?!

Commentaires

comments powered by Disqus