예제 #1
0
 public static ICollection<Exercise> ExConvert(TestDataModelContainer context, ICollection<Exercise> exList)
 {
     ICollection<Exercise> toret = new List<Exercise>();
     foreach (Exercise ex in exList)
     {
         toret.Add(context.ExerciseSet.Where(x => x.Id == ex.Id).FirstOrDefault());
     }
     return toret;
 }
예제 #2
0
 public static ICollection<Comment> ComConvert(TestDataModelContainer context, ICollection<Comment> exList)
 {
     ICollection<Comment> toret = new List<Comment>();
     foreach (Comment ex in exList)
     {
         toret.Add(context.CommentSet.Where(x => x.Id == ex.Id).FirstOrDefault());
     }
     return toret;
 }
        public async Task<ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {                                        
                var user = new ApplicationUser { UserName = model.Email, Email = model.Email};
                var result = await UserManager.CreateAsync(user, model.Password);
                if (result.Succeeded)
                {

                    //костыль на костыле - добавляем юзера в нашу бд
                    TestDataModelContainer db = new TestDataModelContainer();
                    AppUser appUser = new AppUser {
                        Username = model.Email,
                        Email = model.Email,
                        Password = model.Email,
                        Attempt = new List<Attempt>(),
                        SolvedTasks = 0,
                        PublishedTasks = 0,
                        Rank = 0,
                        ImageUrl = "0",
                        Lang = "en"
                    };
                                    
                    db.AppUserSet.Add(appUser);
                    db.SaveChanges();

                    // генерируем токен для подтверждения регистрации
                    var code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                    // создаем ссылку для подтверждения
                    var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code },
                               protocol: Request.Url.Scheme);
                    // отправка письма
                    await UserManager.SendEmailAsync(user.Id, "Подтверждение электронной почты",
                               "Для завершения регистрации перейдите по ссылке:: <a href=\""
                                                               + callbackUrl + "\">завершить регистрацию</a>");
                    return View("DisplayEmail");
                }
                AddErrors(result);
            }
            return View(model);
        }
예제 #4
0
 public static ICollection<Tag> TagConvert(TestDataModelContainer context, ICollection<Tag> exList)
 {
     ICollection<Tag> toret = new List<Tag>();
     foreach (Tag t in exList)
     {
         if (t.Id != 0)
         toret.Add(context.TagSet.Where(x => x.Id.Equals(t.Id)).FirstOrDefault());
     }
     return toret;
 }