none
Formato Fecha en DataTable.Select()

    Pregunta

  • Esta pregunta me surge como resultado de una búsqueda a una columna que tiene formato fecha, el data table lo cargo de una base de datos Access y para efectuar la búsqueda por fuerza debo de usar el siguiente formato.

    dtAbonoReader.Select(colToFind + " = #" + dateFind.ToString("MM/dd/yyyy") + "#")

    Pero solo para aprender un poco mas que sin duda ustedes me han enseñado muchas cosas la pregunta es:

    ¿Existe alguna forma de cambiar el formato que recibe el dtAbonoReader.Select() para que la búsqueda se pueda hacer con el formato "dd/MM/yyyy"?

    Muchas gracias por sus aportes y saludos

    Edchar

    lunes, 18 de junio de 2012 16:44

Respuestas

  • es por ejemplo "16 Enero 2012" o sea el formato de "dd/MMMM/yyyy" y es ahi donde no entiendo el asunto pues si el DataTable al recorrer las filas tiene ese formato.

    pero el formato tu lo decides quizas tenga algun por defecto, pero puedes cambiarlo

    DataRow row = dt.Rows[0];
    
    txtfecha.Text = Convert.ToDateTime(row["nombrecampofecha"]).ToString("dd/MM/yyyy");

    como veras tomas el valor del datatable y tu qaplcias el formato


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Edchari lunes, 18 de junio de 2012 18:41
    lunes, 18 de junio de 2012 18:12

Todas las respuestas

  • ¿Existe alguna forma de cambiar el formato que recibe el dtAbonoReader.Select() para que la búsqueda se pueda hacer con el formato "dd/MM/yyyy"?

    el tema es que esto esta relacionado con al forma en como access trabaja

    quizas tenga que ver con la cultura de la aplicacion

    podrias poner en el Main() de programs.cs esta linea

    System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("es-ES");

    si esta tomando la cultura quizas afecte tambien a la query d ela db, igual nunca lo he intentado y access es medio raro ene ste aspecto, pero quizas funcione

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    lunes, 18 de junio de 2012 16:54
  • Hola Leandro, de nuevo muchas gracias por tu ayuda lo puse y no se efectuó ningun cambio en la busqueda sigue esperando que el formato se "MM/dd/yyyy"

    Tengo entendido que el asunto esta relacionado con el DataTable pues quise cambiar el formato de la columna pero me dice que no se puede si este esta lleno, desde luego me imagino que sería diferente si lo creara desde cero y lo llenara de forma gradual pero todo eso seria un trabajo innecesario solo me puse a pensar si había alguna forma de hacerlo simple.

    Muchas gracias


    Edchar

    lunes, 18 de junio de 2012 17:09
  • no me suena un tema del datatable porque sino la cultura deberia cambiarle el comportamiento

    y la casrga gradual tampo afecta, es un tema del proveedor de access al cual se vincula el datatable cuando lo cargas


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    lunes, 18 de junio de 2012 17:25
  • Lo extraño es que cuando recorro las filas del dtAbonoReader la fecha que me devuelve al usar Debug.WriteLine() es por ejemplo "16 Enero 2012" o sea el formato de "dd/MMMM/yyyy" y es ahi donde no entiendo el asunto pues si el DataTable al recorrer las filas tiene ese formato.

    ¿Por que no puedo usarlo en la fila?

    Gracias


    Edchar

    lunes, 18 de junio de 2012 17:51
  • es por ejemplo "16 Enero 2012" o sea el formato de "dd/MMMM/yyyy" y es ahi donde no entiendo el asunto pues si el DataTable al recorrer las filas tiene ese formato.

    pero el formato tu lo decides quizas tenga algun por defecto, pero puedes cambiarlo

    DataRow row = dt.Rows[0];
    
    txtfecha.Text = Convert.ToDateTime(row["nombrecampofecha"]).ToString("dd/MM/yyyy");

    como veras tomas el valor del datatable y tu qaplcias el formato


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Edchari lunes, 18 de junio de 2012 18:41
    lunes, 18 de junio de 2012 18:12
  • Ok Muchas Gracias por tus comentarios me han sido de mucha utilidad.

    Saludos


    Edchar

    lunes, 18 de junio de 2012 18:41