ASP.net MVC Annotazioni di Dati DateTime Valore di Default

Nel mio modello di visualizzazione ho il seguente attributo:

 [Required]
 [DataType(DataType.Date, ErrorMessage="Please enter a valid date in the format dd/mm/yyyy")]
 [Display(Name = "Date of Birth")]
 public DateTime DOB { get; set; }

A mio modo di vedere ho il seguente:

<div class="editor-label">
    @Html.LabelFor(model => model.DOB)
</div>
<div class="editor-field">
    @Html.EditorFor(model => model.DOB)
    @Html.ValidationMessageFor(model => model.DOB)
</div>

Prima di inviare il modulo il valore di default per il DOB è 1/01/0001 come faccio a interrompere questo valore viene popolata automaticamente, voglio semplicemente un campo vuoto quando la gente visita questo modulo?

InformationsquelleAutor Adam O’Brien | 2010-12-04

3 Replies
  1. 7

    Credo che si dovrà utilizzare il nullable DateTime? tipo. DateTime non può essere null, quindi, avrà sempre un valore.

    InformationsquelleAutor Mayo

  2. 6

    Provare a fare il DOB DateTime nullable come @Mayo stati:

    public DateTime? DOB { get; set; }

    InformationsquelleAutor amurra

  3. 1

    DateTime è di tipo struct. Così, per impostazione predefinita DateTime non può essere null. Esso ha valore di default pari a ’01/01/0001′.
    La soluzione al tuo problema è quello di utilizzare il nullable DateTime? tipo.
    Se si desidera default di un certo valore come ’01/01/2014′, allora si può assegnare il valore come:
    DOB = new DateTime(2014, 01, 01);

    InformationsquelleAutor Chirag

Lascia un commento