public ActionResult Create([Bind(Include = "Id,LastName,FirstName,Patronymic,Email,Description,Phone")] Teacher teacher, HttpPostedFileBase uploadImage) { var tcUrl = RouteData.Values["tc"]; var tc = db.TrainingCenters.SingleOrDefault(a => a.Url == tcUrl); if (ModelState.IsValid) { if (uploadImage != null) { byte[] imageData = null; // считываем переданный файл в массив байтов using (var binaryReader = new BinaryReader(uploadImage.InputStream)) { imageData = binaryReader.ReadBytes(uploadImage.ContentLength); } // установка массива байтов teacher.Image = imageData; } db.Users.Add(teacher); db.SaveChanges(); var teach = db.Teachers.FirstOrDefault(a => a.Email == teacher.Email); TrainingCenterTeacher trainingCenterTeacher = new TrainingCenterTeacher() { IdTeacher = teach.Id, IdTrainingCenter = tc.Id }; db.TrainingCenterTeachers.Add(trainingCenterTeacher); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(teacher)); }
public async Task <ActionResult> Create([Bind(Include = "UserName,Password,TypeUser,LastName,FirstName,Patronymic,Email,Description,Phone,DateOfBirth,PassportData")] UserMan user) { user.DateOfBirth = DateTime.Now.ToString(); if (ModelState.IsValid) { var tcUrl = RouteData.Values["tc"]; var tc = db.TrainingCenters.SingleOrDefault(a => a.Url == tcUrl); var anu = new RegisterViewModel(); anu.UserName = user.UserName; anu.Password = user.Password; anu.ConfirmPassword = user.Password; if (user.TypeUser == "teacher") { var teacher = new Teacher(); teacher.Description = user.Description; teacher.Email = user.Email; teacher.FirstName = user.FirstName; teacher.LastName = user.LastName; teacher.Patronymic = user.Patronymic; teacher.Phone = user.Phone; db.Teachers.Add(teacher); db.SaveChanges(); var teach = db.Teachers.SingleOrDefault(a => a.Email == user.Email); //anu.UserId = teach.Id; TrainingCenterTeacher trainingCenterTeacher = new TrainingCenterTeacher() { IdTeacher = teach.Id, IdTrainingCenter = tc.Id }; db.TrainingCenterTeachers.Add(trainingCenterTeacher); db.SaveChanges(); } if (user.TypeUser == "student") { var student = new Student(); student.Description = user.Description; student.Email = user.Email; student.FirstName = user.FirstName; student.LastName = user.LastName; student.Patronymic = user.Patronymic; student.DateOfBirth = Int32.Parse(user.DateOfBirth); student.PassportData = user.PassportData; db.Students.Add(student); db.SaveChanges(); var stud = db.Students.SingleOrDefault(a => a.Email == user.Email); //anu.UserId = stud.Id; } AccountController q = new AccountController(); await q.Register(anu); var savedUser = db.Users.SingleOrDefault(a => a.Email == user.Email); var savedAspNetUser = appDb.Users.SingleOrDefault(a => a.UserName == user.UserName); savedUser.AspNetUserId = savedAspNetUser.Id; db.Entry(savedUser).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(user)); }