SQL Server DateTime y C # DateTime
En mi servidor SQL tengo una tabla muy simple para probar, que solo contiene tres filas:ID
, Date
yHours
. (varchar
, DateTime
, varchar
).
El formato DateTime en SQL es como:yyyy-MM-dd HH:mm:ss.fff
.
El formato de DateTime en C # es como:yyyy-dd-MM HH:mm:ss.fff
.
Uso el siguiente código para obtener el formato C # DateTime:
string ddd = "2012-10-10 00:00:00.000";
dt1 = DateTime.ParseExact(ddd, "yyyy-MM-dd HH:mm:ss.fff", null);
Si trato de hacerlo enyyyy-dd-MM
Me sale un error:
El DateTime, que está representado por la cadena, no es compatible con el calendario.
En mi aplicación de C # estoy tratando de encontrar la cantidad total de horas entre las fechas de los sund. De alguna manera lo puse a trabajar, pero solo funciona para fechas entre 01 y 12.
Asi como de2012-01-10
a2012-10-10
(diez días) me dará la cantidad correcta de horas totales de la base de datos.
Pero cuando escribo2012-01-10
a2012-14-10
(catorce días) me sale un error:
La conversión de un tipo de datos char a un tipo de datos de fecha y hora resultó en un fuera de rango "
Gracias de antemano.
PD. ¿Puede sugerir una forma más fácil de obtener fechas?
consulta mySQL
string CommandText = "SELECT * FROM date_test WHERE id = '4' AND date BETWEEN '" + dt1 + "' AND '" + dt2 + "'";
He resuelto el problema pero no la solución.
El problema es que la base de datos SQL mira el formato y quiere aaaa-MM-dd, pero C # solo puede enviar aaaa-dd-MM.
Por qué no puedeParseExact()
hacer yyyy-MM-dd?