.Net Core application console comment cacher la saisie d’un mot de passe
Je travaillais sur une application console (CLI) faite en .Net Core et je me suis demandé :
Mais comment faire pour que la saisie d’un mot de passe dans la console soit comme sur Linux, c’est-à-dire que la saisie ne s’affiche pas dans la console ?
En fait c’est d’une simplicité déconcertante
private string AskForPassword() { Console.Write("Veuillez saisir votre mot de passe : "); string password = ""; ConsoleKeyInfo info = Console.ReadKey(true); while (info.Key != ConsoleKey.Enter) { if (info.Key != ConsoleKey.Backspace) { password += info.KeyChar; info = Console.ReadKey(true); } else if (info.Key == ConsoleKey.Backspace) { if (!string.IsNullOrEmpty(password)) { password = password.Substring (0, password.Length - 1); } info = Console.ReadKey(true); } } return password; }
Laisser un commentaire