2017-05-07 1 views
0

Wie der Titel sagt, möchte ich in der Lage sein, mehrere Benutzer aus einer Datenbank zu nehmen und sie zu meinem azure B2C Mieter hinzufügen. Ich habe bereits erfolgreich einzelne Benutzer mit dem B2C-Grafik-Client erstellt. Ich würde auch gerne wissen, ob jemand ein JSON-Schema erstellt hat, um bei der Benutzererstellung mit dem B2C-Grafik-Client zu helfen.Wie erstellt man mehrere Benutzer in azure b2c mit Graph API?

Antwort

2

Da Sie erfolgreich einen Benutzer mit dem B2C-Diagrammclient erstellt haben, können Sie auf die gleiche Weise mehrere Erstellungsanforderungen für Benutzer erstellen, um mehrere Benutzer zu erstellen. Zum Beispiel könnten Sie Benutzer aus der Datenbank in die Datentabelle einlesen, dann die Datentabelle wiederholen, das Benutzerobjekt initialisieren und eine Benutzeranforderung senden. Zum Beispiel beziehen sich auf this code sample, könnten Sie unter Code versuchen, Benutzer zu erstellen:

private static void CreateUser() 
{ 

    //here you need to loop datatable and assign values 
    for (int i = 0; i < 2; i++) 
    { 
     UserData user = new UserData(); 
     user.accountEnabled = true; 
     SignInName sn = new SignInName(); 
     sn.type = "emailAddress"; 
     sn.value = "nanyuTest"+i+"@nanyutestb2c.onmicrosoft.com"; 
     user.signInNames = new List<SignInName>(); 
     user.signInNames.Add(sn); 
     user.creationType = "LocalAccount"; 
     user.displayName = "nan yu"; 
     user.mailNickname = "nanyuTest" + i; 
     PasswordProfile pf = new PasswordProfile(); 
     pf.password = "[email protected]!"; 
     pf.forceChangePasswordNextLogin = false; 
     user.passwordProfile = pf; 
     user.passwordPolicies = "DisablePasswordExpiration"; 
     string json = JsonConvert.SerializeObject(user); 
     object formatted = JsonConvert.DeserializeObject(client.CreateUser(json).Result); 

     Console.ForegroundColor = ConsoleColor.White; 
     Console.WriteLine(JsonConvert.SerializeObject(formatted, Formatting.Indented)); 
    } 
} 

    public class SignInName 
    { 
     public string type { get; set; } 
     public string value { get; set; } 
    } 

    public class PasswordProfile 
    { 
     public string password { get; set; } 
     public bool forceChangePasswordNextLogin { get; set; } 
    } 

    public class UserData 
    { 
     public bool accountEnabled { get; set; } 
     public List<SignInName> signInNames { get; set; } 
     public string creationType { get; set; } 
     public string displayName { get; set; } 
     public string mailNickname { get; set; } 
     public PasswordProfile passwordProfile { get; set; } 
     public string passwordPolicies { get; set; } 
     public string city { get; set; } 
     public object country { get; set; } 
     public object facsimileTelephoneNumber { get; set; } 
     public string givenName { get; set; } 
     public object mail { get; set; } 
     public object mobile { get; set; }   
     public string postalCode { get; set; } 
     public object preferredLanguage { get; set; } 
     public string state { get; set; } 
     public object streetAddress { get; set; } 
     public string surname { get; set; } 
     public object telephoneNumber { get; set; } 
    } 

Details zu den optionalen Bereichen Benutzereinheit, können Sie in den Azure AD Graph API entity reference finden.

+0

Wo in der Codebeispiel würde ich diesen Code platzieren? Würde ich die aktuelle CreateUser() -Funktion ersetzen? Ich bin in C# nicht sehr versiert. Würde ich immer noch eine JSON-Datei verwenden, um Benutzer zu erstellen, und wenn ja, müsste ich mehrere JSON-Dateien erstellen oder kann diese neue Funktion ein Array aus dem JSON lesen? Erfordert diese Funktion eine andere Syntax als die alte CreateUser() - Funktion? –

+0

Im Codebeispiel wurde json string aus der Datei gelesen, mit meinem Code konnten Sie Daten aus der Datenbank in eine Datentabelle (diesen Teilcode, den Sie im Internet suchen konnten) lesen, Datatabelle schleifen und der Benutzereinheit Werte zuweisen und create users (my über Code). Im Codebeispiel können Sie unter der Zeile, die json aus der Datei liest, kommentieren: string json = File.ReadAllText (args [1]); –

+0

Jedes Update? Bitte zögern Sie nicht mich zu informieren, wenn Sie irgendein Problem haben. –

Verwandte Themen