2

私は 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 を非表示にしたいと考えています。

4

1 に答える 1

4

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

于 2010-02-22T18:09:14.577 に答える