Académique Documents
Professionnel Documents
Culture Documents
Datos con
Ado .Net
Presentando datos Asp .Net
• Utilizando los objetos gráficos de
Visual Studio.Net
En la caja de Herramientas (Toolbox), en
la Ficha Data, se encuentran los objetos
más comunes
Objetos Visuales
Para obtener Datos a ser mostrados en
una página
Colocar sobre ésta un objeto DataAdapter
Responder al asistente, para establecer
conexión, origen, etc.
Una vez colocado, con el menú contextual,
generar el DataSet correspondiente
Utilizar éste último para vincular los
Controles Web
Demo
SqlDataSource
Motor de Base de Datos
Si es SQLServer
Es preferible utilizar System.Data.SqlClient
Si es “otro”
System.Data.OleDb
Recordar…
Ambos exponen interfaces comunes
Algunos objetos dependen directamente de
System.Data
System.Data.Common
Controles
de
Lista
Controles de Lista
Dentro de ASP .Net se encuentran 2
caracteristicas fundamentales para
trabajar con ADO que son las Plantillas
(Templates) y el mecanismo de conexión
de datos (Data Binding).
Comunmente los Controles de Lista se
utilizan se utilizan en combinación con
Plantillas (definen su aspecto) y Data
Binding (definen el origen de datos).
Controles de Lista
Estos controles se encuentran
especializados en ostrar listados de
datos en las aplicaciones ASP .Net.
Existen tres controles estandar dentro de
esta familia:
Repeater
DataList
GridView
Controles de Lista
Repeater, Este control muestra elementos de
datos en una lista, por si solo no genera una
salida visible para el usuario, para que se vea
visible se debe utilizar junto con las planillas.
DataList, Similar al control anterior pero permite
una mayor personalización a la hora de mostrar la
información en forma de lista. También permite la
selección y y edición de elementos. También
debe utilizarse con las plantillas.
GridView, Este control muestra la información en
forma de tabla con celdas y columnas. Es el mas
complejo de todos, ofrece un alto grado de
personalización .
Plantillas
Plantillas
La Mayoria de los controles Web tienen
un aspecto estandar definido, pero los
controles Repeater y DataList no ofrecen
una salida sino que debemos especificar
el aspecto que van a tener a treves del
mecanismo de los templates.
Plantillas - Tipos
HeaderTemplate
Representa la primera linea de los datos,
es decir, es la cabecera de los datos, el
uso tipico de esta plantilla es para
indicar el inicio de un elemnto
contenedor de informacion, como puede
ser una tabla.
Plantillas - Tipos
ItemTemplate
Representa cada linea de los datos, es
decir, representa cada elemento o
registro. Dentro de esta plantilla se debe
utilizar la sintaxis especial de Data
Binding, en el caso de una tabla seria
cada una de las filas.
Plantillas - Tipos
AlternatingItemTemplate
Esta plantilla se aplica a elementos
alternos, y tiene la misma funcionalidad
que la anterior.
Plantillas - Tipos
SeparatorItemTemplate
Esta plantilla permite separar cada uno
de los elementos, es decir, cada una de
las líneas de datos, pueden ser saltos de
líneas, líneas o indicadores de fin e inicio
de columna de una fila de una tabla.
Plantillas - Tipos
FooterTemplate
Es la ultima linea de salida, es decir, el
pie de los datos. Normalmente suele
contener el elemento que cierra el
contenedor, es decir, cierra el elemento
que se ha abierto previamente con la
plantilla HeaderTemplate.
Demo
Plantillas
DataBinding
DataBinding
El mecanismo de DataBinding (conexión
con los datos o enlace con los datos),
podemos asociar unos datos con un
control del interfaz de usuario
correspondiente definido dentro de un
Web Form.
El DataBinding, se conectan controles
Web a una fuente de datos y ASP .NET
muestra la información de forma
automática, es una forma muy sencilla
de organizar la informacion en listas,
cajas de texto, grids, parrafos, etc.
DataBinder.Eval()
Este método es utilizado cuando
tenemos que hacer referencia a un valor
dentro de un origen de datos y además
deseamos darle un formato determinado.
Este origen de datos va a contener mas
de un valor por cada fila, es decir seria
similar a una tabla de una base de datos
con sus diferentes campos por cada
registro.
Este método se utiliza normalmente en
combinación con la instrucción
Container.DataItem
DataBinder.Eval()
Parametros
posee 3 parametros:
1. Es un objeto de clase Object que va a
representar el contenedor de los datos, en
el caso de los controles Repeater, DataList
y GridView el contenedor de los datos
siempre sera: Container.DataItem.
2. Es un objeto de clase String que va a ser
referencia al campo de los datos.
3. Es un objeto String que va a indicar el
formato con el que se va a mostrar el
campo correspondiente, que debe de estar
entre { }.
DataBinder.Eval()
Entre los corchetes en primer lugar
siempre debe aparecer el valor cero que
hace referencia a modo de variable el valor
actual que contiene el campo de datos. A
continuacion aparecen dos puntos(:)
seguidos de los caracteres especiales de
formato de cadena. Fuera de los corchetes
podemos indicar cualquier cadena, que
sera tomada como un literal.
DataBinder.Eval()
Carácter Formato Descripcion
c Moneda del sistema
g Formato General – depende
del datos
e Formato Cientifico
f Formato Coma Flotante
n Formato numerico
p Formato Porcentual
DataBinder.Eval()
Carácter Formato Descripcion
d Fecha Corta (d/m/yyyy)
D Fecha Larga
f Fecha Larga y Hora Corta
g Fecha corta y tiempo corto
m Mes y dia
t Hora corta
y Mes y año
Demo
DataBinder
Control
DataList
Control DataList
Este control de lista se debe utilizar al
menos la plantilla ItemTemplate. Este
control se puede personalizar mas ya que
incorpora tres propiedades llamadas:
RepeaterDirection
RepeatLayout
RepetaColumns
Control DataList
RepeatLayout
esta propiedad indica que distribución se
le va a dar a los datos.
RepeatDirection
Indica si los elementos se van a mostrar
de forma horizontal o vertical
RepeatColumns
Esta propiedad va a recibir un valor
entero que indicara el numero de
columnas utilizado para mostrar los
datos.
Demo
DataList
Control DataList - Plantillas
SelectedItemTemplate
Esta plantilla define el aspecto que va a
tener un elemento cuando es
seleccionado dentro de un control
DataList o DataGrid, esta plantilla, no se
encuentra disponible en el control
Repeater
Demo
DataList
SelectedItemTemplate
Control DataList - Plantillas
EditItemTemplate
Esta plantilla permite definir el aspecto
de un elemento cuando pasa a modo de
edicion, es decir, esta plantilla nos va a
permitir modificar los datos de un
elemnto determinado.
Demo
DataList
EditItemTemplate
Control
Data Grid
Control DataGrid
Este control muestra la información en
forma de tabla con celdas y columnas,
generando el código HTML equivalente a
una tabla. Se puede utilizar de forma muy
sencilla o podemos complicar su uso para
llegar a altos niveles de personalización a
la hora de mostrar la informacion.
Demo
DataGrid
Control DataGrid - Propiedades
BoundColumn
Muestra el contenido de la columna
como etiqueta, y es el tipo de columna
por defecto. Para indicar el campo de los
datos que se van a mostrar se hace uso
de la propiedad DataField.
HiperLinkColumn
Muestra como un Hipervinculo. Este tipo
de columna se puede utilizar por ejemplo
cuando deseamos mostrar información
adicional del registro actual en una
pagina distinta.
Demo
DataGrid
BoundColumn
y
HyperLinkColumn
Vinculando Controles
Los controles vinculables a datos
obtienen la información ANTES que la
página se entregue al Navegador
Se “cargan” durante el proceso de
“DataBinding”
NO Generan Data Island en la página HTML
NO es vinculación de Datos en DHTML
Los Datos se Obtienen
cuando se necesitan
Por definición, ningún control se
vincula a sus datos automáticamente
(a diferencia de los controles en
Visual Basic 6).
Sólo cuando el desarrollador indica que
los datos son necesarios estos se
obtienen
El DataAdapter debe “llenar” al Dataset
DataAdapter.Fill(Dataset)
Aun Cuando se Vinculan
Se debe indicar a los controles cuando
es el momento adecuado para “cargar”
los datos
Control.DataBind()
De esa forma, nada sucede
“automáticamente” sino que depende
de las decisiones del desarrollador
DataView
Aún cuando el origen de datos se
asigne a un Dataset
El control se vincula con un DataView
El Dataset expone uno por el método
DefaultView
Se pueden definir otras vistas a partir del
mismo conjunto de datos
Ordenado diferente
Filtrado
Sólo algunos campos….
Controles Vinculables a Datos
Casi todos los Controles Web son
vinculables a Datos
Algunos están preparados directamente
para presentar información
DataGrid
DataRepeater
DataList
DataGrid
Genera una Grilla de Datos
Admite formato automático
También permite definir estilos
distintos según se trate el tipo de
renglón. Es capaz de mostrar los
renglones con distintos controles
según sea de presentación o de edición
DataGrid…
Vinculando a Datos
Dos Propiedades
DataSource
(el objeto de datos usado como origen)
Datamember
(cuando un Dataset contiene más de
una tabla, el nombre de la que se desea
Utilizar)
Un método
DataBind
Demo…