public async Task RunAsync(IRestContext context) { ISystemUserApi userApi = context.Factory.CreateSystemUserApi(); IEnumerable<UserResponse> users = (await userApi.GetUsersAsync(new SqlQuery())).ToList(); Console.WriteLine("GetUsersAsync(): {0}", users.Select(x => x.Name).ToStringList()); UserResponse user = users.SingleOrDefault(x => x.Email == NewEmail); if (user != null) { await DeleteUser(user, userApi); } UserRequest newUser = new UserRequest { FirstName = "Andrei", LastName = "Smirnov", Name = "pinebit", Email = NewEmail, IsActive = true }; users = await userApi.CreateUsersAsync(new SqlQuery(), newUser); user = users.Single(x => x.Email == NewEmail); Console.WriteLine("CreateUsersAsync(): {0}", context.ContentSerializer.Serialize(user)); newUser.Id = user.Id; newUser.Name = "Andrei Smirnov"; user = (await userApi.UpdateUsersAsync(new SqlQuery(), newUser)).Single(x => x.Email == NewEmail); Console.WriteLine("UpdateUsersAsync(): new name={0}", user.Name); await DeleteUser(user, userApi); }
// ReSharper disable PossibleMultipleEnumeration public async Task RunAsync(IRestContext context) { ISystemApi systemApi = context.Factory.CreateSystemApi(); IEnumerable<UserResponse> users = await systemApi.GetUsersAsync(new SqlQuery()); Console.WriteLine("GetUsersAsync(): {0}", users.Select(x => x.display_name).ToStringList()); UserResponse user = users.SingleOrDefault(x => x.email == NewEmail); if (user != null) { await DeleteUser(user, systemApi); } UserRequest newUser = new UserRequest { first_name = "Andrei", last_name = "Smirnov", display_name = "pinebit", email = NewEmail, password = "******", is_active = true }; users = await systemApi.CreateUsersAsync(new SqlQuery(), newUser); user = users.Single(x => x.email == NewEmail); Console.WriteLine("CreateUsersAsync(): {0}", context.ContentSerializer.Serialize(user)); newUser.id = user.id; newUser.display_name = "Andrei Smirnov"; user = (await systemApi.UpdateUsersAsync(new SqlQuery(), newUser)).Single(x => x.email == NewEmail); Console.WriteLine("UpdateUsersAsync(): new display_name={0}", user.display_name); await DeleteUser(user, systemApi); }