Это, вероятно, уже просили более тысячи раз, но я просто не могу разобраться с этим после попытки более 10 раз.
Я пытаюсь создать «Учителя», где одинМожно выбрать отдел, в котором находится учитель.
Модель:
public class CreateTeacherModel
{
[Required]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required]
[DataType(DataType.EmailAddress)]
[Display(Name = "Email address")]
public string Email { get; set; }
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm password")]
[Compare("Password", ErrorMessage = "The password and confirmation password do not match.")]
public string ConfirmPassword { get; set; }
[Display(Name = "Division")]
public Division Division { get; set; }
[Display(Name = "Divisions")]
public Dictionary<Guid, Division> Divisions
{
get
{
var db = new IBPVEntities();
Division = db.Division.FirstOrDefault();
return db.Division.ToDictionary(division => division.DivisionId);
}
}
Контроллер:
[Authorize(Roles = "Administrator")]
public ActionResult CreateTeacherTest()
{
return View(new CreateTeacherModel());
}
[Authorize(Roles = "Administrator")]
[HttpPost]
public ActionResult CreateTeacherTest(CreateTeacherModel model)
{
if (ModelState.IsValid)
{
var selectedDivision = model.Division;
// Save to database.
}
return View(model);
}
Вид:
@Html.DropDownListFor(x => x.Division, new SelectList(Model.Divisions, "DivisionId", "Name"))
Отдел имеет2 свойства: DivisionId (guid) и Name (строка).
Я совершенно не понял, что делать сейчас, может кто-нибудь помочь мне в этом?
Заранее спасибо!