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

Mostrar datos...

Estas en el tema de Mostrar datos... en el foro de .NET en Foros del Web. Hola mu buenas, tengo un problemilla, estoy empezando con asp.net, y con la herramienta visual studio .net con C#, pero... en fin el problema es ...
  #1 (permalink)  
Antiguo 19/04/2004, 06:13
 
Fecha de Ingreso: abril-2004
Ubicación: Murcia
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
Mostrar datos...

Hola mu buenas, tengo un problemilla, estoy empezando con asp.net, y con la herramienta visual studio .net con C#, pero... en fin el problema es el siguiente:

Creo una conexion correcta a una base de datos acces con odbc con su dsn de sistema correspodiente, despues creo un odbcdatadapter en el que creo una consulta sql de una tabla para mostrarla en una lista de valores(select * from servicios (que tiene: id, descripcion)), y por ultimo creo un dataset(sin hacerle nada) para llenarlo con esos datos del dataadapter, para todo ello el vstudio crea su cog¡digo correspondiente como ya sabeis, y para mostrar los datos en las propiedades de la lista, pongo en datamember "SERVICIOS", y en datasource el dataset, y en el codigo lo siguiente(es decir doble clic, sobre la lita en el web form de vs y sale zona donde poner codigo la pagina ....aspx.cs):

private void ListBox1_SelectedIndexChanged(object sender, system.EventArgs e)
{
odbcDataAdapter1.Fill(dataSet1);
Response.Write("descripcion");
}

como ya comento soy nuevo en esto y sobre todo en la herramienta, por lo que no se si esta bien lo que hago, pero el caso es que no me da error al ejecutar la pagina, pero no se ven los datos, tampoco tengo claro si hay que tocar alguna propiedad del dataset para relacionarlo con el datadapter, asi que si alguien me puede ayudar se lo agredeceria.

Gracias y un saludo.
  #2 (permalink)  
Antiguo 19/04/2004, 08:32
 
Fecha de Ingreso: agosto-2003
Mensajes: 448
Antigüedad: 20 años, 8 meses
Puntos: 1
En vez del Reponse.Write, tenés que ejecutar el método DataBind() del control que usas para visualizar los datos.

Suponiendo que queres mostrar en un DataGrid los datos :

odbcDataAdapter odbcDataAdapter1 = new odbcDataAdapter("el sql", "el connection string");
DataSet dataset1 = new DataSet();
odbcDataAdapter1.Fill(dataSet1, "SERVICIOS");
datagrid1.DataSource = dataset1;
datagrid1.DataMember = "SERVICIOS";
datagrid1.DataBind();
  #3 (permalink)  
Antiguo 20/04/2004, 01:18
 
Fecha de Ingreso: abril-2004
Ubicación: Murcia
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
Muchas gracias victork_py pero sigo sin consegirlo, de todas maneras como podras ver en el codigo es un Listbox no un Datagrid y como en las propiedades del Listbox en visual studio le pongo el datamember "SERVICIOS" y el DataSource "dataSet1", este es el codigo que he probado:

private void ListBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
odbcDataAdapter1.Fill(ataSet1, "SERVICIOS");
ListBox1.DataBind();
}

El cual supongo que esta mal o como el ejemplo me lo has puesto para un datagrid falta algo, por que no muestra nada, asi que perdona pero como digo soy nuevo en esto.

Lo seguiré intentando Gracias.
  #4 (permalink)  
Antiguo 20/04/2004, 08:30
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Así te debe funcionar.

Cita:
ListBox1.DataSource = dataSet1;
ListBox1.DataTextField = "campo_a_mostrar";
ListBox1.DataValueField = "campo_value";
ListBox1.DataBind();


Saludos
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #5 (permalink)  
Antiguo 21/04/2004, 06:35
 
Fecha de Ingreso: abril-2004
Ubicación: Murcia
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
Muchas gracias RootK.
Pero Me voy a pegar un tiro , no tengo pelotas a mostrar nada, gracias por vuestra ayuda, pero perdonar mi ignorancia en esto.

Aqui pongo el codigo que yo veo a ver si me podeis aclarar algo, porque si hago la conexion con oldb no muestra nada como antes, pero con odbc me da:

"Error de servidor en la aplicación '/AVISOS'.No se puede abrir la clave 'Temporary (volatile) Jet DSN for process 0x5ec Thread 0x5ac DBC 0x5562bc Jet' del Registro. ERROR [IM006] [Microsoft][Administrador de controladores ODBC] Error de SQLSetConnectAttr del controlador ERROR [HY000] [Microsoft][Controlador ODBC Microsoft Access]Error general No se puede abrir la clave 'Temporary (volatile) Jet DSN for process 0x5ec Thread 0x5ac DBC 0x5562bc Jet' del Registro. ERROR [HY000] [Microsoft][Controlador ODBC Microsoft Access] El motor de base de datos Microsoft Jet no puede abrir el archivo '(desconocido)'. Está abierto en modo exclusivo por otro usuario o bien necesita permiso para ver sus datos........"

Codigo que se ve en visual studio en ...aspx.cs:


private void Page_Load(object sender, System.EventArgs e)
{
// Introducir aquí el código de usuario para inicializar la página
if (!this.IsPostBack)
RellenaLista();

}

/*Codigo generado por vs.net*/
private void RellenaLista()
{
odbcDataAdapter1.Fill(dataSet1, "SERVICIO");
ListBox1.DataSource = dataSet1.Tables["SERVICIO"];
ListBox1.DataTextField = "Id";
ListBox1.DataValueField = "Id";
ListBox1.DataBind();
}

private void ListBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{

}
}
}


Bueno Gracias a todos y a quien me pueda alludar.
__________________
A caballo regalado...........quitale el envoltorio.
  #6 (permalink)  
Antiguo 21/04/2004, 08:19
Avatar de SunDarK  
Fecha de Ingreso: diciembre-2003
Ubicación: Jerez de la Frontera
Mensajes: 1.193
Antigüedad: 20 años, 5 meses
Puntos: 8
Cita:
El motor de base de datos Microsoft Jet no puede abrir el archivo '(desconocido)'. Está abierto en modo exclusivo por otro usuario o bien necesita permiso para ver sus datos........"
1º Mira ver si la BD esta en local y no en red.Si esta en red comprueba que tienes los permisos necesarios para abrirla
2º Comprueba tambien que la ruta que le pasas para abrir la BD sea correcta
3º Comprueba que la BD no esta siendo modificada en el momento de compilación

Saludos,suerte y aqui estamos
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 04:43.