楷模
public class Cidade
{
[Key]
public int Id { get; set; }
[Required]
public string Nome { get; set; }
}
public class Usuario
{
[Key]
public int Id { get; set; }
[Required]
public Cidade Cidade { get; set; }
/* more fields... */
}
控制器
public ActionResult Registrar()
{
using (var db = new MyContext())
{
ViewBag.Cidades = new SelectList(db.Cidades.ToList(), "Id", "Nome");
}
return View();
}
[HttpPost]
public ActionResult Registrar(Usuario usuario)
{
if (ModelState.IsValid)
{
using (var db = new MyContext())
{
db.Usuarios.Add(usuario);
db.SaveChanges();
}
return RedirectToAction("Index", "Home");
}
return Registrar();
}
看法
@Html.LabelFor(m => m.Cidade)
@Html.DropDownListFor(m => m.Cidade, (SelectList)ViewBag.Cidades)
但ModelState.IsValid == false
总是,因为usuario.Cidade == null
。
:(