ASP.NET - Validación de fecha y hora

 
Vista:
Imágen de perfil de Jhon Jairo
Val: 27
Ha disminuido 1 puesto en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

Validación de fecha y hora

Publicado por Jhon Jairo (15 intervenciones) el 04/05/2018 16:52:01
Hola, uso VS 2012, mvc asp.net, dataannotations, estoy tratando de validar fecha y hora, pero sólo funciona si ingreso la fecha, si intento algo como 11/03/2018 0:00:00 no me funciona.

[DisplayName("Fecha y Hora")]
[MaxLength(23, ErrorMessage="Máximo 23 caracteres")]
[Required(ErrorMessage="Requerido")]
[RegularExpression(@"^([0]?[1-9]|[1|2][0-9]|[3][0|1])[./-]([0]?[1-9]|[1][0-2])[./-]([0-9]{4}|[0-9]{2})^(2[0-3]|[01]?[0-9]):([0-5]?[0-9]):([0-5]?[0-9])$",
ErrorMessage = "Debe tener el formato correcto")]
public System.DateTime fecha_y_hora { get; set; }

Como puedo arreglarlo?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 101
Plata
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

Validación de fecha y hora

Publicado por Cesar (39 intervenciones) el 04/05/2018 17:03:20
Hola.

Podrías probar empleando el formato estándar:

yyyy-MM-dd HH:mm:SS

En este caso:

2018-03-11 00:00:00
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jhon Jairo
Val: 27
Ha disminuido 1 puesto en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

Validación de fecha y hora

Publicado por Jhon Jairo (15 intervenciones) el 05/05/2018 17:59:15
Sale el error: La cadena de entrada no tiene el formato correcto.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
@model IEnumerable<SalonDeBellezaMVC2.Models.tbl_agendas>
 
@{
    ViewBag.Title = "Index";
}
 
<h2>Index</h2>
 
<p>
    @Html.ActionLink("Create New", "Create")
</p>
<table>
    <tr>
        <th>
            fecha_y_hora
        </th>
        <th></th>
    </tr>
 
@foreach (var item in Model) {
    <tr>
        <td>
            @Html.DisplayFor(modelItem => item.fecha_y_hora)
        </td>
        <td>
            @Html.ActionLink("Edit", "Edit", new { id=item.id }) |
            @Html.ActionLink("Details", "Details", new { id=item.id }) |
            @Html.ActionLink("Delete", "Delete", new { id=item.id })
        </td>
    </tr>
}
 
</table>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jhon Jairo
Val: 27
Ha disminuido 1 puesto en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

Validación de fecha y hora

Publicado por Jhon Jairo (15 intervenciones) el 05/05/2018 18:04:09
En la base de datos la fecha-hora está así:
2018-04-12 20:56:00.000
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jhon Jairo
Val: 27
Ha disminuido 1 puesto en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

Validación de fecha y hora

Publicado por Jhon Jairo (15 intervenciones) el 09/05/2018 03:10:20
Lo arreglé así:

1
2
[DataType(DataType.Date, ErrorMessage = "No tiene el formato correcto")]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy HH:mm:ss}")]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andrea

Validación de fecha y hora

Publicado por Andrea (10 intervenciones) el 08/06/2018 17:57:23
Puedes intentar usar el mismo validador:
1
2
3
4
<asp:RangeValidator ID="RangeValidator4" runat="server"
 ControlToValidate="txtFecha" CssClass="texto" Display="Dynamic"
 ErrorMessage="Fecha no válida" MaximumValue="1/1/9999" MinimumValue="1/1/1910"
SetFocusOnError="True" Type="Date"></asp:RangeValidator>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar