Html.EditorForModel и формат отображения - PullRequest
2 голосов
/ 22 февраля 2010

Я использую MVC 2 и Html.EditorForModel (), чтобы позволить мне отобразить редактор для модели.

Я использую модель, которая выглядит примерно так:

public class LoanACar
{
    [DisplayNameFromResource("VehicleDetails")]
    public string VehicleDetails { get; set; }
    [DisplayNameFromResource("VehicleId")]
    [Required]
    public long VehicleId { get; set; }
    [DisplayNameFromResource("LoanCentreId")]
    [Required]
    public long LoanCentreId { get; set; }
    [DisplayNameFromResource("StartDate")]
    [Required]
    public DateTime StartDate { get; set; }
    [DisplayNameFromResource("EndDate")]
    [Required]
    public DateTime EndDate { get; set; }
}

Что отлично работает.

Я бы хотел пойти дальше и сделать так, чтобы мой VehicleDetails был меткой, а не текстовым полем, а также VehicleId, чтобы быть скрытым.

1 Ответ

4 голосов
/ 22 февраля 2010

Для ваших целей существует специальный атрибут System.Web.Mvc.HiddenInputAttribute.

public class LoanACar
{
    [DisplayNameFromResource("VehicleDetails")]
    [HiddenInput(DisplayValue = true)]
    public string VehicleDetails { get; set; }

    [DisplayNameFromResource("VehicleId")]
    [Required]
    [HiddenInput(DisplayValue = false)]
    public long VehicleId { get; set; }

    [DisplayNameFromResource("LoanCentreId")]
    [Required]
    public long LoanCentreId { get; set; }

    [DisplayNameFromResource("StartDate")]
    [Required]
    public DateTime StartDate { get; set; }

    [DisplayNameFromResource("EndDate")]
    [Required]
    public DateTime EndDate { get; set; }
}

Учитывайте разницу в DisplayValue значении параметра HiddenInput атрибута.

...