private void SendConfirmationEmail(User user) { using (var ctx = new StepMapDbContext()) { user = ctx.Users.Attach(user); UserConfirmation uc = new UserConfirmation(); uc.User = user; uc.ConfirmationGuid = Guid.NewGuid().ToString(); ctx.UserConfirmations.Add(uc); ctx.SaveChanges(); string link = config.ClientBaseAddress + "/Account/ConfirmEmail/?guid=" + uc.ConfirmationGuid; //TODO: do not hardcode text notificationManager.SendEmail(user, "registration on stepmap.xyz", string.Format("you are registered on stepmap.xyz. please confirm your accout visiting this link: {0}!", link)); //LOCSTR } }
public void DALTest3() { using (StepMapDbContext ctx = new StepMapDbContext()) { User u = new User(); u.Email = "*****@*****.**"; u.LastLogin = DateTime.UtcNow; u.Name = "test user"; u.PasswordHash = "hash"; u.UserRole = UserRole.Member; u.UserState = UserState.Active; u = ctx.Users.Add(u); ctx.SaveChanges(); UserConfirmation uc = new UserConfirmation(); uc.User = u; uc.ConfirmationGuid = "guid"; uc = ctx.UserConfirmations.Add(uc); ctx.SaveChanges(); try { UserConfirmation du = ctx.UserConfirmations.Single(tu => tu.ConfirmationGuid == "guid"); Assert.AreEqual(u.Id, du.User.Id); } finally { ctx.UserConfirmations.Remove(uc); ctx.Users.Remove(u); ctx.SaveChanges(); } } }