我有一个ASP.NET MVC应用程序,我正在使用Entity框架。 我有一个名为Propiedad的模型,它有一些没有必需属性的虚拟属性,在视图中我有一个虚拟属性的下拉列表,当我没有选择一个选项时,这告诉我必须选择一个选项。
我需要Grupo属性不需要选择另一个选项,我可以选择optionLabel而不显示验证器错误消息。
这是模型:
public class Propiedad
{
[Key]
public int Id { get; set; }
public virtual Entidad Entidad { get; set; }
public virtual PestanasPorEntidad Pestana { get; set; }
public virtual GrupoDePropiedades Grupo { get; set; }
public string Codigo { get; set; }
public string Nombre { get; set; }
public string TipoDeDatos { get; set; }
public bool Requerido { get; set; }
[Required]
public int Orden { get; set; }
public string Columna { get; set; }
}
这是视图(创建)的一部分:
<div class="form-group">
@Html.LabelFor(model => model.Grupo, new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownListFor(m => m.Grupo.Id, (SelectList)(ViewBag.PestanaList), "Ninguno", new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.Grupo)
</div>
</div>
这是控制器的一部分
private void SetGrupoListViewBag()
{
ViewBag.GrupoList = new SelectList(unitOfWork.GrupoDePropiedadesRepository.Get(), "id", "nombre");
}
// GET: /GlobalAdmin/Propiedades/Create
public ActionResult Create()
{
var propiedad = new Propiedad();
SetTipoDeDatosListViewBag();
SetEntidadListViewBag();
SetPestanaListViewBag();
SetColumnaListViewBag();
SetGrupoListViewBag();
var entidadId = Request["entidadId"] != null ? Convert.ToInt32(Request["entidadId"]) : -1;
if (entidadId != -1)
{
propiedad.Entidad = unitOfWork.EntidadRepository.GetById(entidadId);
return View(propiedad);
}
else
{
return View();
}
}