static void Main(string[] args) { if (args.Length <= 0) { Console.WriteLine("Please enter a command as the first argument."); Console.WriteLine("\t1 : Migrate social and local accounts with password"); Console.WriteLine("\t2 : Migrate social and local accounts with random password"); Console.WriteLine("\t3 Email-address : Get user by email address"); Console.WriteLine("\t4 Display-name : Get user by display name"); Console.WriteLine("\t5 : User migration cleanup"); return; } try { switch (args[0]) { case "1": MigrateUsersWithPasswordAsync().Wait(); break; case "2": MigrateUsersWithRandomPasswordAsync().Wait(); break; case "3": if (args.Length == 2) { B2CGraphClient b2CGraphClient = new B2CGraphClient(Program.Tenant, Program.ClientId, Program.ClientSecret); string JSON = b2CGraphClient.SearcUserBySignInNames(args[1]).Result; Console.WriteLine(JSON); GraphAccounts users = GraphAccounts.Parse(JSON); } else { Console.WriteLine("Email address parameter is missing"); } break; case "4": if (args.Length == 2) { B2CGraphClient b2CGraphClient = new B2CGraphClient(Program.Tenant, Program.ClientId, Program.ClientSecret); string JSON = b2CGraphClient.SearchUserByDisplayName(args[1]).Result; Console.WriteLine(JSON); GraphAccounts users = GraphAccounts.Parse(JSON); } else { Console.WriteLine("Display name parameter is missing"); } break; case "5": UserMigrationCleanupAsync().Wait(); break; } } catch (Exception ex) { Console.ForegroundColor = ConsoleColor.Red; if (ex.InnerException != null) { Console.WriteLine(ex.InnerException.Message); } else { Console.WriteLine(ex.Message); } } finally { Console.ResetColor(); } Console.ReadLine(); }