У меня есть страница регистрации пользователя, и я создаю учетную запись пользователя. Вместо хранения изображения в виде байтов я храню его на сервере. Итак, в моем контроллере у меня два разных действия: Create() и UploadImage() в контроллере регистра. Я не понимаю, как ключ, назначенный для изображения, позволяет базе данных знать, что он должен вытащить определенное изображение с сервера для определенной учетной записи? Я не понимаю, как ключ хранится для изображения?Ключи для разных контроллеров в ASP.NET MVC
Создать действие:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "studentId,firstName,middleName,lastName,dateOfBirth,country,emailAddress,userName,userPassword,confirmPassword,university")] Student student)
{
if (ModelState.IsValid)
{
var salt = Crypto.GenerateSalt();
var saltedPassword = student.userPassword + salt;
var hashedPassword = Crypto.HashPassword(saltedPassword);
student.userPassword = hashedPassword;
student.confirmPassword = hashedPassword;
student.salt = salt;
db.Students.Add(student);
db.SaveChanges();
return RedirectToAction("UploadImage");
}
return View(student);
}
действие Загрузить изображение:
[HttpPost]
public ActionResult Upload(HttpPostedFileBase photo)
{
string path = @"~/Content/profileImage";
if (photo != null)
photo.SaveAs(path + photo.FileName);
return RedirectToAction("Index");
}
Моя модель для обоих же есть все другие переменные, и изображение на той же модели .:
public class Student
{
public int studentId { get; set; }
[Required(ErrorMessage = "First Name is required")]
[Display(Name="First Name*")]
public string firstName { get; set; }
[Display(Name = "Middle Name")]
public string middleName { get; set; }
[Display(Name = "Last Name*")]
[Required(ErrorMessage = "Last Name is required")]
public string lastName { get; set; }
public DateTime dateOfBirth { get; set; }
[FileSize(10240)]
[FileTypes("jpg,jpeg,png")]
public HttpPostedFileBase image { get; set; }
}
Как может Я связываю два разных контроллера для одного идентификатора? –