Foros del Web » Programando para Internet » ASPX (.net) »

Problemas con fecha

Estas en el tema de Problemas con fecha en el foro de ASPX (.net) en Foros del Web. buenas tardes foreros, he aqui el problema resulta que para dar de alta un registro que contiene fecha me la da perfectamente bien, es decir ...
  #1 (permalink)  
Antiguo 21/02/2013, 13:46
 
Fecha de Ingreso: agosto-2008
Mensajes: 142
Antigüedad: 16 años, 2 meses
Puntos: 2
Problemas con fecha

buenas tardes foreros, he aqui el problema

resulta que para dar de alta un registro que contiene fecha
me la da perfectamente bien, es decir manejo 3 dropdownlist
ddlDia, ddlMes, ddlAño

xFecha = Convert.ToInt32(ddlDia.SelectedValue) & "," & Convert.ToInt32(ddlMes.SelectedValue) & "," & Convert.ToInt32(ddlAño.SelectedValue)
Despues en mi cadena de conexion doy de alta la variable fecha
cmd.Parameters.AddWithValue("@Fecha", xFecha)

eso funciona perfectamente bien, me sube bien el registro a la base de datos
SQL server 2005.
edito y sin problemas guarda los cambios...

EL PROBLEMA
mi cliente tiene su server en ingles, windows 2008 server
y sql server en ingles tambien

para tratar de solucionarlo puse globalizacion en el IIS, (ES, MX)
graba bien los datos, cuando son registros nuevos, pero
al editar me trae el dia, mes y año bien a la pantalla de edicion, pero cuando guardo, me cambia el dia por el mes, el año si lo guarda bien...
es decir si pongo 1 Dec 2013,
en la base me pone 12 01 2013
y cuando lo vuelvo a llamar para edicion
me sale 12 Jan 2013

alguien con alguna respuesta a esto???
  #2 (permalink)  
Antiguo 02/03/2013, 09:06
 
Fecha de Ingreso: marzo-2013
Mensajes: 12
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Problemas con fecha

Yo en vez de editar la configuracion del ISS simplemente haria un cast para un objeto de tipo DateTime con el metodo TryParse. Este metodo convierte el string que le pases a una fecha y lo deja en el formato en que esta configurado en el equipo donde se ejecuta el codigo. Ademas en vez de usar 3 DropDownList te sugeriria, si es que esta permitido en tu proyecto, usar el CalendarExtender del AjaxControlToolkit. Le da una mejor presentacion a la pagina y hasta le puedes decir el formato en que quieres que se muestre la fecha

Saludos
  #3 (permalink)  
Antiguo 04/03/2013, 15:04
 
Fecha de Ingreso: septiembre-2010
Mensajes: 91
Antigüedad: 14 años, 1 mes
Puntos: 9
Respuesta: Problemas con fecha

O también puedes hacer formatos y cosas asi, por ejemplo para crear la fecha hacer algo como esto:

DateTime Fecha = new DateTime(ddlAño.SelectedValue, ddlMes.SelectedValue, ddlDia.SelectedValue);

y guardas esa fecha en la base.

Y para mandarla a llamar y mostrarlo al cliente, lo haces normalmente y le das un formato.

string fechaBase = [La llamada de la base].toString.value("dd/MM/yyyy");

(Solo verifica bien que sea asi lo del formato, pero por ahi va el asunto).


O el formato que prefieras ponerle (las MM representan el mes, si pones mm mostrarias minutos)

d = Dia
M = Mes
y = año
h = Hora
m = Minuto
s = Segundo

Donde cada letra que coloques representa una cifra a mostrar. Asi puedes hacer formatos como:
dd/MM/yy mm:ss
MM/yyyy hh:mm
MM-yy
dd-MM-yyyy

Etc.


Editado: Luego si necesitas usarlos en los DropDownList solo haces un split en una variable array y los separas segun el simbolo que hayas colocado (Por ejemplo / o - ). Y esos valores los conviertes a Integer para el selectedvalue

Última edición por CRauda; 04/03/2013 a las 15:07 Razón: Olvidaba lo de los Dropdownlist

Etiquetas: dropdownlist, fecha, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:51.