Foros del Web » Programación para mayores de 30 ;) » .NET »

DataSet = ValorPredefinido + ResultadosConsulta

Estas en el tema de DataSet = ValorPredefinido + ResultadosConsulta en el foro de .NET en Foros del Web. Hola a todo el mundo, tengo el siguiente problema con un DataSet. Actualmente relleno el DataSet con los resultados de una consulta (mi comando) y ...
  #1 (permalink)  
Antiguo 17/09/2009, 05:20
 
Fecha de Ingreso: agosto-2009
Mensajes: 10
Antigüedad: 14 años, 9 meses
Puntos: 0
DataSet = ValorPredefinido + ResultadosConsulta

Hola a todo el mundo,

tengo el siguiente problema con un DataSet. Actualmente relleno el DataSet con los resultados de una consulta (mi comando) y después de obtener los datos correspondientes de la base de datos, añado "***".

DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(miComando);

da.Fill(ds);

// Alles Auswählen
DataRow dr = ds.Tables[0].NewRow();
dr[0] = "***";
ds.Tables[0].Rows.Add(dr);

El resultado podría ser el siguiente:

Tabla
---------------
Física
Química
Literatura
***
---------------

Donde "Física", "Química" y "Literatura" son los datos que arroja mi consulta.

Pues bien, lo que necesito es lo siguiente y no sé como hacerlo: ¿Cómo puedo crear un dataset en el cual el primer Row no sea la primera línea de mi consulta, sino un valor que yo defina, en este caso "***"?

El resultado que me gustaría obtener es el siguiente:

Tabla
---------------
***
Física
Química
Literatura
---------------

Gracias por adelantado
  #2 (permalink)  
Antiguo 17/09/2009, 15:44
 
Fecha de Ingreso: octubre-2000
Mensajes: 1.692
Antigüedad: 23 años, 6 meses
Puntos: 19
Respuesta: DataSet = ValorPredefinido + ResultadosConsulta

Hola.
Podes hacerlo de varias formas. Una es esta:

- Despues que llenas tu dataset creas otro dataSet para que le cargues los datos de nuevo.

DataSet xDs2 = new xDs2();

Ahora al xDs2 le agregas una tabla, ya que como no está cargado no tiene nada. Si no sabes como agregarle una tabla y filas a mano podes verlo acá:
http://www.dotnetspider.com/resource...matically.aspx

Ahora haces como antes, le agregas una nueva fila al xDs2, la que queres que aparezca primero.

Entonces ya tenes un dataset con un solo registro. Ahora lo que debes hacer es recorrer el dataset que cargaste con tu sql y agregarle sus registros al nuevo dataset, algo como:

foreach ( DataRow xRow in Ds.table[0].Rows ) {

xDs2.Table[0].Rows.Add(xRow);

}

Y asi tendrías tu dataset cargado como vos queres. El código anterior es una idea a lo mejor tiene algún error de sintaxis.

- La otra sería que uses el mismo código que tenes ahora y ordenarlo para que tu registro aparezca primero, por lo tanto tu registro tendría que tener algún valor el inicio para que cuando lo ordenes se muestre primero y usar algo como esto:

Dataset1.Tables(0).DefaultView.Sort = "tuCampo ASC"

- Tambien puedes pasar tu dataset a un ArrayList para que te sea más facil ordenarlo y podrías mover filas.
__________________
PD: Con amor, fe, amor a Dios y amistad podemos hacer un mundo mejor!!!!
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 13:39.