|
|
|
#1 -
26/07/2006 16:15:18
|
Reporta abuso
|
Link Permanente
|
COMPARAR FECHAS EN C#
|
|
|
|
Hola a todos!!!!! Estoy utilizando visual studio 2005 y C#. En la BD tengo 2 fechas, tutoriasdesde y tutoriashasta. Necesito saber si la fecha de hoy está entre el intervalo de las 2 fechas que tengo en la BD.Es decir si tutoriasdesde<=fecha de hoy<=tutoriashasta.He conseguido obtener las fechas que tengo almacenadas en la BD y la fecha actual(fecha de hoy) en formato de fecha corta, por ej: 26/07/2006. Pero ahora no sé como como comparar las fechas para saber si la fecha de hoy está dentro del intervalo marcado por las dos fechas que tengo en la BD. NECESITO AYUDA!!A continuacion os dejo el codigo que he conseguido.Saludos a todos y gracias.
realizo la conexion con la BD correctamente.
conn.Open();
string consulta = "SELECT tutoriasdesde FROM profesor WHERE usuario='aj001'";
OleDbCommand comandoseleccion = new OleDbCommand(consulta, conn);
DateTime tutoriadesde = (DateTime)comandoseleccion.ExecuteScalar();
conn.Close();
string desde = (string)tutoriadesde.ToShortDateString();//para que me saque solo la fecha sin la hora.
DateTime fhoy=DateTime.Today;//calculo la fecha de hoy
string fhoysinhora=(string) fhoy.ToShortDateString();//fecha de hoy sin la hora 0:00:00
pero ahora no puedo hacer if (fhoysinhora>=desde) porque el operador >=no se puede utilizar con strings.Tampoco soy capaz de pasarlo a entero, utilizo convert.Int32(fhoysinhora) y no me deja. Otra cosa que se me ocurre es probar el año,mes y dia de ambas fechas, no sé.¿ALGUIEN PODRÍA AYUDARME??.
|
|
|
|
#2 -
30/10/2014 20:49:55
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
joaquin ha dicho: | necesito el codigo que me calcule la edad introduciendo su fecha de nacimiento
| dfgdfgdfgsdfg
|
|
|
|
|
#3 -
05/12/2012 17:44:28
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
//SOLUCION PARA PODER COMPARAR
if (convert.ToDateTime(tutoriadesde.ToShortDateString()) == convert.ToDateTime(fhoy.ToShortDateString())
{ }
|
|
|
|
|
#4 -
06/03/2012 1:53:48
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
necesito hacer un reporte entre fechas para exportar a excel.. seleccionando por ejemplo 22/08/2009 a 15/01/2012 .. no me sale ....por favor alguien me puede ayudar
|
|
|
|
|
#5 -
06/07/2011 21:52:33
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
Me encanta este hilo. Me habeis sacado de un apuro....os admiro a todos .gracias! creo que el tema de las fechas es un trastorno para todos los que somos novatos....
|
|
|
|
|
|
|
#7 -
29/05/2008 9:01:21
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
Lo normal sería decir cual es tu problema para calcular la edad y no pedir que te lo den todo hecho.
|
|
|
|
|
#8 -
28/05/2008 1:36:28
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
necesito el codigo que me calcule la edad introduciendo su fecha de nacimiento
|
|
|
|
|
#9 -
10/06/2007 0:08:53
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
Realiza la comparacion entre DateTimes, antes de convertirlos a String.
mari88 ha dicho: | Hola a todos!!!!! Estoy utilizando visual studio 2005 y C#. En la BD tengo 2 fechas, tutoriasdesde y tutoriashasta. Necesito saber si la fecha de hoy está entre el intervalo de las 2 fechas que tengo en la BD.Es decir si tutoriasdesde<=fecha de hoy<=tutoriashasta.He conseguido obtener las fechas que tengo almacenadas en la BD y la fecha actual(fecha de hoy) en formato de fecha corta, por ej: 26/07/2006. Pero ahora no sé como como comparar las fechas para saber si la fecha de hoy está dentro del intervalo marcado por las dos fechas que tengo en la BD. NECESITO AYUDA!!A continuacion os dejo el codigo que he conseguido.Saludos a todos y gracias.
realizo la conexion con la BD correctamente.
conn.Open();
string consulta = "SELECT tutoriasdesde FROM profesor WHERE usuario='aj001'";
OleDbCommand comandoseleccion = new OleDbCommand(consulta, conn);
DateTime tutoriadesde = (DateTime)comandoseleccion.ExecuteScalar();
conn.Close();
string desde = (string)tutoriadesde.ToShortDateString();//para que me saque solo la fecha sin la hora.
DateTime fhoy=DateTime.Today;//calculo la fecha de hoy
string fhoysinhora=(string) fhoy.ToShortDateString();//fecha de hoy sin la hora 0:00:00
pero ahora no puedo hacer if (fhoysinhora>=desde) porque el operador >=no se puede utilizar con strings.Tampoco soy capaz de pasarlo a entero, utilizo convert.Int32(fhoysinhora) y no me deja. Otra cosa que se me ocurre es probar el año,mes y dia de ambas fechas, no sé.¿ALGUIEN PODRÍA AYUDARME??. |
|
|
|
|
|
#10 -
19/03/2007 12:42:19
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
hoy he hecho un codigo similar yo. tenia el mismo problema. mira, lo acabo de resolver. Usa un between en la consulta. la sintaxis es así:
select * camp1, camp2 from taula where data BETWEEN data1 AND data2
espero que te funcione THE PUTXI PROJECT
|
|
|
|
|
#11 -
08/03/2007 10:53:00
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
Hola Anaelis
Debes abrir un nuevo post cuando tengas dudas 
Échale un vistazo al este artículo son el TimeSpan que te ayudará.
|
|
|
|
|
#12 -
07/03/2007 17:54:49
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
hola, diculpa la molestia es que tengo una duda y quiciera que que me ayudaras. Es primera vez que entro aqui. Yo estoy aprendiendo c# ahora y estoy haciendo un proyectico de una cadena hotelera No se trabajar con datetime Yo tengo los Atributos fecha de inicio y fecha de fin los declaro datetime, pero no se como es que lo inicializo en el constructor de la clase para despues cuando yo vaya a reservar un uan habitacionponer esos datos. Si usted me pudiera ayudar me podria responder a este correo anaelisgonzalez@gmail.com y disculpe las molestias, saludos Anaelis.
|
|
|
|
|
#13 -
24/01/2007 21:26:49
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
Oops, perdon, se me paso algo tan obvio:
No necesitas declarar la variable fechaHoy ya que puedes obtener la fecha actual del servidor que siempre es lo mejor en todos los casos. Si tu servidor es locar, es decir, es tu misma maquina, de igual manera te daria la fecha que obtienes con DateTme.Today de C#. Ahora tendrias que modificar la query sql asi:
cmd.CommandText = "select count(*) from myTabla where usuario='pepito' and getdate() between tutoriasdesde and tutoriashasta"
Es una pequeña optimizacion de codigo que nunca esta de mas. Claro, si quieres llegar a ser buen desarrollador, siempre hay que optimizar lo mas que se pueda. Salu2 nuevamente y disculpen no haberlo notado antes en el primer comentario que hice. Bye...
|
|
|
|
|
#14 -
24/01/2007 21:07:28
|
Reporta abuso
|
Link Permanente
|
RE: COMPARAR FECHAS EN C#
|
|
|
Hola, es una lastima que haya entrado a este foro hasta ahora, pero tal vez mi solucion le sirva a otros:
Lo que se me ocurre es que lances la consulta a SQL y sea el quien determine si tu fecha actual esta en el rango del usuario. Algo como esto:
// cn: es tu objeto de conexion. SqlCommand cmd = new SqlCommand(); cmd.Connection = cn; //asigno la conexion cmd.CommandTimeout = 0; //El tiempo de espera de la consulta es infinita
string fechaHoy = DateTime.Today.ToShortDateString(); cmd.CommandText = "select count(*) from myTabla where usuario='pepito' and '"+ fechaHoy +"' between tutoriasdesde and tutoriashasta"
if(int.Parse(cmd.ExecuteScalar().ToString())>0) MessageBox.Show("La fecha actual esta dentro del intervalo del usuario","Notificacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
Espero les sea de gran ayuda a algunos usuarios. Saludos a todos.
|
|
|
|
|
|
|
|