Pour rendre HTML dans ma vue d'édition, j'utilise l'assistant @Html.EditorForModel()
.différence entre: [ScaffoldColumn (false)] et [Display (AutoGenerateField = false)]
Mon modèle:
[Required(ErrorMessage = "Campo obrigatório")]
[Display(Name = "Nome completo")]
public string Name { get; set; }
[Required(ErrorMessage = "Campo é obrigatório")]
[StringLength(100, ErrorMessage = "A {0} deve ter pelo menos {2} characteres.", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "Senha")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirmar senha")]
[Compare("Password", ErrorMessage = "A nova senha e a confirmação da senha não conincidem.")]
public string ConfirmPassword { get; set; }
[Required(ErrorMessage = "Campo obrigatório")]
[Display(Name = "Convidado")]
[UIHint("IsGuest")]
public bool IsGuest { get; set; }
[RequiredIf("IsGuest", true, ErrorMessage = "Campo é obrigatório")]
[ScaffoldColumn(false)]
public string CodeGuest { get; set; }
Propriété: CodeGuest
ne doit pas être créé par l'aide @Html.EditorForModel()
. (Je voudrais le créer manuellement.)
En lisant sur Internet, j'ai trouvé plusieurs points et j'aimerais connaître la différence.
Se souvenant que je ne veux pas qu'il soit caché, ce champ ne sera créé par cette
EditorTemplates (IsGuest.cshtml):
@using BindSolution.AndMarried.Model;
@model BindSolution.AndMarried.Models.RegisterModel
@Html.EditorFor(e => e.IsGuest)
<span>TESTE</span>
@Html.EditorFor(e => e.CodeGuest)
Question:
Qu'est-ce que est la différence entre: [ScaffoldColumn (false)]
et [Display (AutoGenerateField = false)]
Pourquoi pas Je fais [Display (AutoGenerateField = false)] have the effect: 'do not generate the HTML field when calling
@ Html.EditorForModel() `.