public GrandInfo() { Name = ""; Gender = false; Nation = NationStatus.Australian; Military = false; }
public static async Task <int> AddUnknownNationsAsPendingAsync(List <string> newNations, bool sourceDumps) { int counter = 0; using (var context = new BotDbContext(_config)) { var status = await context.NationStatuses.FirstOrDefaultAsync(n => n.Name == "pending"); if (status == null) { status = new NationStatus() { Name = "pending" }; await context.NationStatuses.AddAsync(status); await context.SaveChangesAsync(); } foreach (string nationName in newNations) { if (await context.Nations.FirstOrDefaultAsync(n => n.Name == nationName) == null) { var time = sourceDumps ? TimeZoneInfo.ConvertTimeToUtc(DumpDataService.LastDumpUpdateTimeUtc, TimeZoneInfo.Local) : DateTime.UtcNow; await context.Nations.AddAsync(new Nation() { Name = nationName, StatusTime = time, Status = status, StatusId = status.Id }); await context.SaveChangesAsync(); counter++; } } } return(counter); }
public static async Task SetNationStatusToAsync(Nation nation, string statusName) { using (var dbContext = new BotDbContext(_config)) { var current = nation.Status; var status = await dbContext.NationStatuses.FirstOrDefaultAsync(n => n.Name == statusName); if (status == null) { status = new NationStatus() { Name = statusName }; await dbContext.NationStatuses.AddAsync(status); await dbContext.SaveChangesAsync(); } nation.Status = status; nation.StatusId = status.Id; nation.StatusTime = DateTime.UtcNow; dbContext.Nations.Update(nation); await dbContext.SaveChangesAsync(); } }