public static void Main(string[] args) { var startTimeSpan = TimeSpan.Zero; var periodTimeSpan = TimeSpan.FromSeconds(Constants.MapUpdateInterval); var timer = new System.Threading.Timer( e => { DateTime start = DateTime.Now; using (ISession session = NHibernateHelper.OpenSession()) { IQueryable <Map> maps = session.Query <Map>(); Console.WriteLine("Map updating started"); foreach (Map m in maps) { Console.WriteLine($"Updating map {m.ID}..."); m.UpdateAll(session); ImageGen.GenerateImage(m); session.Update(m); } } TimeSpan diff = DateTime.Now - start; Console.WriteLine($"=========Maps updated in {diff.TotalSeconds} seconds========"); }, null, startTimeSpan, periodTimeSpan ); BuildWebHost(args).Run(); }
public async Task <IActionResult> Register(RegisterViewModel model, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; if (ModelState.IsValid) { Console.WriteLine("Model State valid"); long map_id; using (ISession s = NHibernateHelper.OpenSession()) { using (ITransaction t = s.BeginTransaction()) { Console.WriteLine("Creating new map..."); Map m = new Map(); Console.WriteLine("Generating..."); m.GenerateNew(s, 10); Console.WriteLine("Saving..."); map_id = (long)s.Save(m); ImageGen.GenerateImage(m); t.Commit(); } } var user = new ApplicationUser { UserName = model.Email, Email = model.Email, my_map_id = map_id }; //user.personal_map.GenerateNew(); var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { _logger.LogInformation("User created a new account with password."); //Console.WriteLine("Map generated for user:"******"User created a new account with password."); return(RedirectToLocal("/Map")); } AddErrors(result); } // If we got this far, something failed, redisplay form return(View(model)); }