SlideShare ist ein Scribd-Unternehmen logo
1 von 58
ENTRENAMIENTO EN ACCESO A
DATOS EXTREMO CON ASP.NET
              Haarón Gonzalez
              Microsoft MCP, MCAD, MCT, MCTS y
              MVP
GENERALES
 Sesión de 4 horas
 No habrá descanso
 Es un entrenamiento no una capacitación
 Puedes preguntar en cuanto surja una duda
 Requieres de Visual Studio 2008 o superior y SQL Express o superior
 Esta sesión se esta transmitiendo en línea y quedara grabada
QUE ES LA VINCULACIÓN DE DATOS O
DATABINDING
Proceso de carga datos provenientes de
 una fuente de datos en un control
   En .NET los controles que soportan databinding
    cuentan con
     la propiedad DataSource donde asignamos los datos
     el método DataBind()para proceder a cargarlos

   Para vincular datos en un control ya sea con código o
    declarativamente establecemos la propiedad
    DataSource e invocamos el método DataBind()
EJERCICIO 1 – CARGANDO DATOS
PROGRAMATICAMENTE
1.   Creamos proyecto de tipo Web Site en Visual Studio
2.   Agregamos una pagina aspx
3.   Arrastramos un control GridView
4.   Programamos código para invocar la fuente de datos en el
     evento Page_Load
Dim connectString As String = "Data
Source=.sqlexpress;Initial Catalog=Northwind;Integrated
Security=True"

Using cnn As New SqlConnection(connectString)
Using cmd As New SqlCommand("select top 30 * from customers",
cnn)
   cnn.Open()
   Dim reader As SqlDataReader = cmd.ExecuteReader()

  GridView1.DataSource = reader
  GridView1.DataBind()

End Using
End Using
string connectString = "Data Source=.sqlexpress;Initial
Catalog=Northwind;Integrated Security=True";

using (SqlConnection cnn = new SqlConnection(connectString))
{
  using (SqlCommand cmd = new SqlCommand("select top 30 * from
customers", cnn))
     {
                cnn.Open();

               SqlDataReader reader = cmd.ExecuteReader();

               GridView1.DataSource = reader;
               GridView1.DataBind();
    }
}
COMO FUNCIONA EL DATABINDING
                        Control
                      DataSource
Fuente   DataBind()
  de                     Cache
Datos                   local de
                          datos
                                   Render()
¿QUE CONTROLES DE ASP.NET
    SOPORTAN DATABINDING?
    Solo algunos controles de ASP.NET lo soportan
        Pueden vincularse a cualquier fuente de datos que implemente la
         interface IEnumerable así como clases DataTable o DataSet

Controles
          HtmlSelect                                  Array
que         CheckBoxList                              ArrayList
soportan    BulletedList                              HashTable
vinculación GridView                                  Queue
          DetailsView                                 SortedList
          FormView                  Vinculados a      Stack
          ListView                                    StringCollection
          DataList                                    DataView
          Repeater                                    DataTable
          DropDownList                                DataSet
          ListBox                                     IDataReader
          RadioButtonList                             IEnumerable
EJERCICIO 2 – CARGANDO DATOS DE
UN ARREGLO PROGRAMÁTICAMENTE
 Agregamos una nueva pagina aspx
 En el markup arrastramos un control BulletedList
 En el codebehind agregamos un arreglo de strings y lo
  inicializamos
 Asignamos la propiedad DataSource y ejecutamos DataBind()
 Corremos el aplicativo y revisamos el funcionamiento
 Agregamos un ListBox, CheckBoxList y asignamos su
  propiedad DataSource
 Usamos Page.DataBind();
Dim numberArray As String() = New String() {"1", "2", "3", "4"}

       numberListBox.DataSource = numberArray
       numberListBox.DataBind()
protected void Page_Load(object sender, EventArgs e)
    {
     string[] numberArray = new string[] {"1","2","3","4" };

    numberListBox.DataSource = numberArray;
    numberListBox.DataBind();

   }
DATABINDING DE TIPO TEXTO VALOR

 Para los controles que soportan cargar solo
  una dimensión de datos (DropDown, ListBox,
  etc) también se pueden vincular mediante
    Inicialización de la propiedad DataTextField al
     campo que queremos desplegar en el control
    Inicialización de la propiedad DataValueField al
     campo que queremos usar como el valor
     identificador de un elemento
Dim dsn As String = "Data Source=.sqlexpress;Initial
Catalog=Northwind;Integrated Security=True"

Using cnn As New SqlConnection(dsn)
Using cmd As New SqlCommand("SELECT TOP 20 * FROM PRODUCTS", cnn)

              cnn.Open()
              ddl.DataSource = cmd.ExecuteReader()
              ddl.DataTextField = ProductName
              ddl.DataValueField = ProductId
              ddl.DataBind()

End Using
End Using
string dsn = @"Data Source=.sqlexpress;Initial
Catalog=Northwind;Integrated Security=True";

        using (SqlConnection cnn = new SqlConnection(dsn))
        {
            using (SqlCommand cmd = new SqlCommand("SELECT TOP 20 *
FROM PRODUCTS",cnn))
            {
               cnn.Open();
               ddl.DataSource = cmd.ExecuteReader();
               ddl.DataTextField = “ProductName”;
               ddl.DataValueField = “ProductId”;
               ddl.DataBind();
            }

        }
EJERCICIO 3 – CARGANDO DATOS DE
TIPO TEXTO VALOR
 Usaremos la primer pagina aspx que creamos y agregamos un
  nuevo control de tipo DropDownList
 En el código asignamos las propiedades DataSource,
  DataTextFIeld y DataValueField
 Invocamos el método DataBind()
 Corremos
 Para seleccionar algún elemento vinculado de forma
  programática usamos la colección Items e invocamos el método
  FindByText o FindByValue

             numberListBox.Items.FindByText("3").Selected = true;
ORIGEN DE DATOS DECLARATIVA
 Las fuentes de datos declarativas son una
 característica agregada en ASP.NET 2.0
   SqlDataSource, ObjectDataSource, XmlDataSource,
    LinqDataSource junto con Visual Studio 2005 en adelante
    ofrecen un soporte enriquecido para la vinculación y
    manipulación enriquecida de los campos vinculados
ORIGEN DE DATOS DECLARATIVA

   Sql-        Object-     Access-        Xml-       SiteMap-
DataSource   DataSource   DataSource   DataSource   DataSource

               Data                                  Site Map
             Component                               Provider




  SQL           Any        Access         XML
                                                    Site Maps
Databases       Data      Databases       Data
VINCULANDO A LAS FUENTES DE
DATOS DECLARATIVAS
A vinculación de datos puede realizarse con o
 sin código alguno
   Soporte desde el diseñador
   Integración con herramientas como server Explorer
   Modelo de vinculación fácil de extenderse
<asp:GridView ID="_productsView"
DataSourceID="_productsDataSource"
        runat="server">
    </asp:GridView>

    <asp:SqlDataSource DataSourceMode="DataReader"
        ID="_productsDataSource"
        ConnectionString="Data
Source=.sqlexpress;Initial
Catalog=Northwind;Integrated Security=True"
        SelectCommand="SELECT TOP 20 * FROM PRODUCTS"
        runat="server">
    </asp:SqlDataSource>
EJERCICIO 4 – DATABINDING
   DECLARATIVO CON CÓDIGO
     Creamos una nueva pagina aspx
     Arrastramos un GridView
     Configuramos un nuevo SqlDataSource mediante el asistente
     Elegimos la tabla Customers
     Exploramos las distintas opciones de ordenamiento, generación y
      filtrado
     Y con codification cargamos el datasource

GridView1.DataSource = SqlDataSource1.Select(new DataSourceSelectArguments());
GridView1.DataBind();
EJERCICIO 5 – DATABINDING
DECLARATIVO SIN CÓDIGO
 Sobre la ultima pagina creada
 Editamos la declaración del GridView para especificar la
  propiedad DataSourceID igual al nombre de nuestro control
  SqlDataSource
 No olvidemos comentar el código anterior
COMO FUNCIONA LA VINCULACIÓN
   DECLARATIVA A LAS FUENTES DE DATOS
                Petición

  GridView
                           IDataSource   SqlDataSource
CreateChildControls()
EnsureDataBind()                   Select
DataBind()

     Cache                                               Database
     local
     de
     datos


             Render
SQLDATASOURCE
 Soporta todas las interacciones con SQL como lectura, escritura,
   actualización, eliminación, filtrado, cacheo, ordenado
 Cuando el DataSource cuenta con algunas de estas propiedades
   establecidas mas soporte y funcionalidad es posible en los controles
Propiedad       Descripcion

ProviderName    System.Data.SqlClient,
                System.Data.OleDb,
                System.Data.OracleClient
DataSourceMod   DataSet o DataReader
e
SelectCommma    Query o el nombre de un
nd              procedimiento almacenado para
                seleccionar datos
InsertCommand   Query o el nombre de un
                procedimiento almacenado para
                insertar datos
DeleteCommand   Query o el nombre de un
                procedimiento almacenado para
                eliminar datos
UpdateComman    Query o el nombre de un
EJERCICIO 6 – MANEJANDO LA
      INSERCIÓN DE DATOS
       Creamos una nueva pagina aspx
       Configuramos un nuevo SqlDataSource con la funcionalidad de
         que se auto genere el insert, update, delete, read
       Verificar los InserParameters y los tipos de parámetros en
         general
      Invocar programáticamente el proceso
protected void Button1_Click(object sender, EventArgs e)   de inserción
  {

      SqlDataSource1.InsertParameters["CustomerId"].DefaultValue = "aaaa";
      SqlDataSource1.InsertParameters["CompanyName"].DefaultValue = "aaaa";
      SqlDataSource1.InsertParameters["ContactName"].DefaultValue = "aaaa";
      SqlDataSource1.InsertParameters["ContactTitle"].DefaultValue = "aaaa";
      SqlDataSource1.Insert();
  }
GRIDVIEW
 Muestra datos en forma tabular, es el sucesor del
  control DataGrid
    Generación de columnas implícita y explicita con capacidad de
     manejar columnas especiales como
       ImageField
       CheckBoxField
       HyperlinkField
       TemplateField
    Interacción inteligente con controles DataSource para que de
     manera predeterminada soporte
       Paginación automática, edición, eliminación y ordenamiento
 De forma automática a los datos vinculados y retorna una
  Tabla con columnas y renglones en formato HTML 
EJERCICIO 7 – GENERANDO GRIDVIEW
DIRECTAMENTE DESDE SERVER
EXPLORER
 Creamos una nueva pagina aspx
 Abrimos el server explores y buscamos la base de datos de Northwind y
  buscamos la tabla Customers
 Arrastramos la tabla Customers a la superficie de diseño
 Visualizamos las opciones del GridView
 Editamos las columnas para incluir una de tipo hipervínculo para
  implementar el maestro
DETAILSVIEW

 Soporta el despliegue y manipulación de un solo
 renglón
   Útil para escenarios maestro detalle
   Soporta paginado en caso de mostrar mas de un renglón, edición,
    eliminación e inserción
   Genera html en formato de tablas, columnas y renglones
EJERCICIO 8 – IMPLEMENTANDO
DETALLE
 Creamos una nueva pagina aspx
 Abrimos el server explores y buscamos la base de datos de
  Northwind y buscamos la tabla Customers
 Arrastramos la tabla Customers a la superficie de diseño
 Visualizamos las opciones del GridView
 Editamos las columnas para incluir una de tipo hipervínculo
TEMPLATE
 Los controles GridView, DetailsView, ListView, Repeater y
  DataList permiten la personalización de la apariencia y el manejo
  de estador a través de plantillas
    Provee el marco sobre el cual se despliegan elementos y nos da un grado de
      flexibilidad para generar nuestro contenido
    Nos permite especificar exactamente como se desplegar la información
    Maneja el marco y la vinculación, genera tablas solo que con la posibilidad de
      personalizar la celda
    La sintaxis Eval y Bind se usan para extraer datos del renglón actual, Eval
      obtiene información de solo lectura y Bind es de lectura y escritura, two way
      binding.
Plantilla vinculada del
Fuente   DataBind()         de control
  de
Datos                    DataSource

                      Por cada rengon en la
                         fuente de datos




                                                Escribe los datos de
                                                 acuerdo a nuestra
                                                   especificacion
COMO EXTRAER VALORES DEL LA
VINCULACION
 Los controles que ubicamos en una plantilla necesitan
 relacionarse con el renglón actual que esta siendo
 vinculado
   Utilizamos la nomenclatura para crear la ventana de acceso a los
    datos del renglón vinculándose <%# expresion %>
   Usamos Eval para extraer los datos
   Es factible también programáticamente obtener y establecer los
    valores del renglón vinculándose
EJERCICIO 9 – TRABAJANDO CON
    RENGLONES VINCULADOS
      Creamos una nueva pagina aspx
      Abrimos el server explores y buscamos la base de datos de Northwind y
        buscamos la tabla Customers
      Arrastramos la tabla Customers a la superficie de diseño
      Visualizamos las opciones del GridView
      Agregamos una columna de tipo Plantilla
      Visualizamos los distintos modalidades como ItemTempalte,
        AlternateTemplate, EditTemplate, etc
      Agregamos un control de tipo Etiqueta en el estado ItemTemplate y en las
        propiedades emergentes de la etiqueta especificamos la vinculación con que
        columna
<asp:TemplateField>
        <ItemTemplate>
           <asp:Label ID="Label1" runat="server" Text='<%# Eval("ContactTitle") %>'></asp:Label>
        </ItemTemplate>
      </asp:TemplateField>
EJERCICIO 9 – TRABAJANDO CON
   RENGLONES VINCULADOS
    Agregamos un botón justo aun lado de la etiqueta y especificamos su
      nombre como cmdOpcion
    Dentro del grid buscamos el evento RowDataBound el cual se dispara
      por cada renglón que se esta vinculando
    Programáticamente especificamos propiedades al botón recién
      agregado
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs
e)
   {
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         Button btn = e.Row.FindControl("cmdOpcion") as Button;
         btn.Attributes.Add("onclick", "return confirm('hola');");
     }
   }
REPEATER
 Este control nos da la posibilidad de manipular a nuestro antojo el
  HTML generado por el control
 Soporta el concepto de plantillas
 Trabaja con los conceptos de vinculación mediante datasources
  solo que nos da la libertad de generar y dibujar el HTML que se
  estará generando
             <asp:DataList ID="DataList1" runat="server" DataKeyField="EmployeeID"
                DataSourceID="SqlDataSource1">
                <ItemTemplate>
                   EmployeeID:
                   <asp:Label ID="EmployeeIDLabel" runat="server"Text='<%# Eval("EmployeeID") %>' />
                   <br />
                   LastName:
                   <asp:Label ID="LastNameLabel" runat="server" Text='<%# Eval("LastName") %>' />
                   <br />
                   FirstName:
                   <asp:Label ID="FirstNameLabel" runat="server" Text='<%# Eval("FirstName") %>' />

                </ItemTemplate>
              </asp:DataList>
EJERCICIO 10 – TRABAJANDO CON
REPEATER
 ///
DATALIST
 Es la combinación de la flexibilidad de Repetar con la estructura
  de un GridVIew
 Permite mostrar a manera de lista vertical u horizontal cualquier
  html creado como plantilla dentro del control
 Es util para acomodar elementos de forma estructurada en la
  interface de usuario
 Dibuja cada renglón de la fuente de datos como una celda
 Requiere que se define por lo menos la plantilla ItemTemplate
 Usamos la propiedad RepeatColumn para especificar cuantos
  elementos queremos incluir en el renglón
 Tambien contamos con RepeatDirectin para especificar la
  dirección en que el control s eva generandoi
EJERCICIO 11 – TRABAJANDO CON
DATALIST
 ///
PARAMETROS DE DATASOURCE
 Los controles DataSource soporta colección de parámetros para
  cada distinta operación
    Una colección de parámetros separada para actualización, insertado,
     seleccionado, eliminado
    Las fuentes de parámetros pueden ser controles, las cookies, la misma forma,
     datos de perfil y/o cadena querystring
PARÁMETROS
 Existen diversas tipos de parámetros
    Control Parameter
        Valor que proviene de cualquier control del lado servidor de una pagina

    Cookie Parameter
        Valor que proviene de algún dato almacenado en una cookie

    Form Parameter
        Valor proveniente de una variable HTTP POST

    Profile Parameter
        Valor proveniente del perfil del usuario de alguna propiedad del perfil

    QueryString Parameter
        Valor obtenido de la barra de direcciones url

    Session Parameter
        Valor obtenido de alguna variable de sesión
EJERCICIO 12 – TRABAJANDO CON
PARAMETROS FILTER
 Agregamos una nueva pagina aspx
 Arrastramos la tabla de Customers del server explorer a la pagina
 Agregamos un cuadro de texto y un botón de buscar
 Seleccionamos nuestro SqlDataSource y buscamos la propiedad
  FilterExpression y establecemos el valor CompanyName LIKE
  ‘%{0}%’
 Configuramos el parámetros
EVENTOS DE DATASOURCE

   Los DataSources exponen eventos,
       útiles para personalizar el
       comportamiento y la interacción que el
       DataSource va teniendo
        Es factible entonces agregar parámetros
          programáticamente
        Desempeñar operaciones cuando se realiza
          satisfactoriamente un insert, update, delete, etc.
        Impedir la ejecución de alguna operación
protected basado en alguna validación
          void SqlDataSource1_Inserting(object sender, SqlDataSourceCommandEventArgs e)
   {
       e.Command.Parameters["CompanyName"].Value = "hola";

        // tambien se puede cancelar la operacion usando

        e.Cancel = true;

   }
VINCULACION DE DOS LADOS
 LA sintaxis Bind() se puede usar en controles que soportan
  Insert/Update/Delete
    Es como Eval() solo que este va dos veces
    Durante el Select se comporta como Eval()
    Durante el Inser/Update los valores son mapeados en parámetros y usados
     para actualizar
    Se usan en los controles mas comunes como GridView, DetailsView,
     FormVIew, ListVIew


              <ItemTemplate>
                         CustomerID:
                         <asp:Label ID="CustomerIDLabel" runat="server"
                             Text='<%# Eval("CustomerID") %>' />
                         <br />
                         CompanyName:
                         <asp:Label ID="CompanyNameLabel" runat="server"
                             Text='<%# Bind("CompanyName") %>' />
                         <br />
                         ContactName:
                         <asp:Label ID="ContactNameLabel" runat="server"
                             Text='<%# Bind("ContactName") %>' />
EJERCICIO 13 – IMPLEMENTANDO
UPDATE EN GRIDVIEW CON
CONTROLES ADICIONALES
FORMVIEW
 Similar al DetailsView, despliega un renglón
 No hay generado de HTML por default, tenemos que especificar
  su plantilla para desplegar su contenido
    Útil cuando queremos personalizar el despliegue visual
EJERCICIO 14 – CREANDO UN ALTA DE
REGISTROS
 Agregamos una nueva pagina aspx
 Arrastramos un DetailsView y configuramos el insert explicando
  que hay que hacer template cada Field si quisiéramos hacer uso
  de los validadores
 Usamos mejor un FormView y editamos su EditMode a Insert
 Agregamos validadores
LISTVIEW
     Lo mejor de todos los controles que soportan vinculación a datos
     Control orientado a plantilla
         Puede remplazar a cualquier control que soporta vinculación de datos




  Se define el
  marco



Se define el
elemento


Se define su
plantilla de muestra
DATAPAGER
    Desacopla la interface de paginación del ListView agregando un
      nuevo control especifico para esto
         Permite usar las opciones de navegación en donde queramos
         Podemos crear diversas opciones de pagina para una misma control




<asp:DataPager ID="DataPager1" runat="server">
                           <Fields>
                               <asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True"
                                   ShowNextPageButton="False" ShowPreviousPageButton="False" />
                               <asp:NumericPagerField />
                               <asp:NextPreviousPagerField ButtonType="Button" ShowLastPageButton="True"
                                   ShowNextPageButton="False" ShowPreviousPageButton="False" />
                           </Fields>
                       </asp:DataPager>
XMLDATASOURCE
     Permite vincularlos a fuentes de datos dinstintas a bases de
      datos
     Special para trabajar con datos XML

<asp:ListView ID="ListView1" DataSourceID="XmlDataSource1" runat="server">
       <LayoutTemplate>
               <asp:PlaceHolder runat="server" ID="itemPlaceholder" />
       </LayoutTemplate>
       <ItemTemplate>
          <a href="<%# XPath("link") %>"> <%# XPath("title") %></a><br />
          <p ><%# XPath("description") %></p>
          <br />
       </ItemTemplate>
       </asp:ListView>

        <asp:XmlDataSource ID="XmlDataSource1" runat="server"
            DataFile="http://feeds.feedburner.com/msmvps/gXSK"
XPath="/rss/channel/item">
        </asp:XmlDataSource>
EJERCICIO 14 – CONSUMIENDO
RSS
XMLDATASOURCE
 Podemoa usar este control para contar con catalogos de datos
  que sabemo que no cambiaran constantemente
 No es necesario que se encuentren en la base de datos como
  tablas aquellos catalogos o elmentos de informacion
    Lista de estado civil
    Sexo
    Tipos de pago
    Etc…
EJERCICIO 15 – USANDO CATALOGOS

 Creamos una nueva pagina
 Agregamos la carpeta App_Data
 Agregamos una carpeta llamada xml
 Agregamos un nuevo archivo xml llamado StstusMarital.xml
 Agregamos el siguiente XML
 Agregamos un nuevo aspx             <?xml version="1.0" encoding="utf-8" ?>
                                      <StatusMarital>
 Arrastramos un XmlDataSource y       <item Name="" Value="0" />
  establecemos propiedad DataFile      <item Name="Married" Value="1" />
                                       <item Name="Single" Value="2" />
 Agregamos algún DropDownList         <item Name="Divorced" Value="3" />
                                       <item Name="Widowed" Value="4" />
 Vinculamos                           <item Name="Other" Value="5" />
                                      </StatusMarital>
XMLDATASOURCE
<Bookstore>
 <genre name="Business">
  <book ISBN="BU1032" Title="The Busy Executive's Database Guide" Price="19.99">
   <chapter num="1" name="Introduction">
    Abstract...
   </chapter>
   <chapter num="2" name="Body">
    Abstract...
   </chapter>
   <chapter num="3" name="Conclusion">
    Abstract...
   </chapter>
  </book>
</genre>
</book>

<asp:XmlDataSource ID="XmlDataSource2" runat="server"
    DataFile="~/App_Data/xml/Bookstore.xml"></asp:XmlDataSource>
  <asp:TreeView ID="TreeView1" runat="server"
DataSourceID="XmlDataSource2">
  <DataBindings>
    <asp:TreeNodeBinding DataMember="chapter" ValueField="name" />
    <asp:TreeNodeBinding DataMember="book" ValueField="title" />
    <asp:TreeNodeBinding DataMember="genre" ValueField="name" />
  </DataBindings>
  </asp:TreeView>
EJERCICIO 16 – USANDO
ARBOLES
OBJECTDATASOURCE
  Soporta la vinculación a un objeto de capa media



    Control                                           Objetos
                              ObjectDataSource
   Data-bound                                          Objetos



<asp:ObjectDataSource ID=“obj” runat=“server”
SelectMethod=“ObtenerDatos”
TypeName=“MiClase” />
                                                      Fuente de
public static class MiClase {                           Datos
static public List<Persona> OntenerDatos() {
List<Persona> personas = new List<Persona>();
// agregamos personas
return personas;
}
}
EJERCICIO 17 – CREANDO CAPA DE
DATOS
 Agregamos una carpeta de tipo App_Code
 Agregamos un DataSet
 Agregamos DataTableAdapter para tabla customer
 Compilamos
 Agregamos nueva paginas aspx
 Agregamos ObJectDataSource
 Configuramos ObjectDataSource
ENTRENAMIENTO EN ACCESO A
DATOS EXTREMO CON ASP.NET
              Haarón Gonzalez
              Microsoft MCP, MCAD, MCT, MCTS y
              MVP

Weitere ähnliche Inhalte

Was ist angesagt?

2. Java Servlets (J2EE) - Curso 2005-2006
2. Java Servlets (J2EE) - Curso 2005-20062. Java Servlets (J2EE) - Curso 2005-2006
2. Java Servlets (J2EE) - Curso 2005-2006Samuel Marrero
 
Motor De Bases De Datos Oracle
Motor De Bases De Datos OracleMotor De Bases De Datos Oracle
Motor De Bases De Datos Oracletriana25
 
Guía Practica conexión BD 2021
Guía Practica conexión BD  2021Guía Practica conexión BD  2021
Guía Practica conexión BD 2021lissette_torrealba
 
UDA-Anexo configuración y uso de jackson
UDA-Anexo configuración y uso de jacksonUDA-Anexo configuración y uso de jackson
UDA-Anexo configuración y uso de jacksonAnder Martinez
 
Bases de Datos en Java - Intro a JDBC
Bases de Datos en Java - Intro a JDBCBases de Datos en Java - Intro a JDBC
Bases de Datos en Java - Intro a JDBCCarlos Hernando
 
Introduccion Ajax V1.0
Introduccion Ajax V1.0Introduccion Ajax V1.0
Introduccion Ajax V1.0Arnulfo Gomez
 
Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jspdtbadboy0
 
Curso Java Avanzado 1 IntroduccióN Al Desarrollo Web
Curso Java Avanzado   1 IntroduccióN Al Desarrollo WebCurso Java Avanzado   1 IntroduccióN Al Desarrollo Web
Curso Java Avanzado 1 IntroduccióN Al Desarrollo WebEmilio Aviles Avila
 
Conceptos Introductorios Del Web 2
Conceptos Introductorios Del Web 2Conceptos Introductorios Del Web 2
Conceptos Introductorios Del Web 2Michelle Aguirre
 
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...José Antonio Sandoval Acosta
 
UDA-Anexo gestión de properties
UDA-Anexo gestión de propertiesUDA-Anexo gestión de properties
UDA-Anexo gestión de propertiesAnder Martinez
 
Buenas prácticas de codificación para capas de acceso a datos de aplicaciones...
Buenas prácticas de codificación para capas de acceso a datos de aplicaciones...Buenas prácticas de codificación para capas de acceso a datos de aplicaciones...
Buenas prácticas de codificación para capas de acceso a datos de aplicaciones...SolidQ
 
[ES] Conectividad de java a base de datos(jdbc)
[ES] Conectividad de java a base  de datos(jdbc)[ES] Conectividad de java a base  de datos(jdbc)
[ES] Conectividad de java a base de datos(jdbc)Eudris Cabrera
 

Was ist angesagt? (19)

Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
System.data.sqlclient
System.data.sqlclientSystem.data.sqlclient
System.data.sqlclient
 
2. Java Servlets (J2EE) - Curso 2005-2006
2. Java Servlets (J2EE) - Curso 2005-20062. Java Servlets (J2EE) - Curso 2005-2006
2. Java Servlets (J2EE) - Curso 2005-2006
 
Motor De Bases De Datos Oracle
Motor De Bases De Datos OracleMotor De Bases De Datos Oracle
Motor De Bases De Datos Oracle
 
Persistencia de datos
Persistencia de datosPersistencia de datos
Persistencia de datos
 
Guía Practica conexión BD 2021
Guía Practica conexión BD  2021Guía Practica conexión BD  2021
Guía Practica conexión BD 2021
 
UDA-Anexo configuración y uso de jackson
UDA-Anexo configuración y uso de jacksonUDA-Anexo configuración y uso de jackson
UDA-Anexo configuración y uso de jackson
 
Bases de Datos en Java - Intro a JDBC
Bases de Datos en Java - Intro a JDBCBases de Datos en Java - Intro a JDBC
Bases de Datos en Java - Intro a JDBC
 
Introduccion Ajax V1.0
Introduccion Ajax V1.0Introduccion Ajax V1.0
Introduccion Ajax V1.0
 
Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jsp
 
Curso Java Avanzado 1 IntroduccióN Al Desarrollo Web
Curso Java Avanzado   1 IntroduccióN Al Desarrollo WebCurso Java Avanzado   1 IntroduccióN Al Desarrollo Web
Curso Java Avanzado 1 IntroduccióN Al Desarrollo Web
 
Curso Java Avanzado 2 Servlets
Curso Java Avanzado   2 ServletsCurso Java Avanzado   2 Servlets
Curso Java Avanzado 2 Servlets
 
Aplicación abc. asp net mvc 3
Aplicación abc. asp net mvc 3Aplicación abc. asp net mvc 3
Aplicación abc. asp net mvc 3
 
Sql Procedural
Sql ProceduralSql Procedural
Sql Procedural
 
Conceptos Introductorios Del Web 2
Conceptos Introductorios Del Web 2Conceptos Introductorios Del Web 2
Conceptos Introductorios Del Web 2
 
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
 
UDA-Anexo gestión de properties
UDA-Anexo gestión de propertiesUDA-Anexo gestión de properties
UDA-Anexo gestión de properties
 
Buenas prácticas de codificación para capas de acceso a datos de aplicaciones...
Buenas prácticas de codificación para capas de acceso a datos de aplicaciones...Buenas prácticas de codificación para capas de acceso a datos de aplicaciones...
Buenas prácticas de codificación para capas de acceso a datos de aplicaciones...
 
[ES] Conectividad de java a base de datos(jdbc)
[ES] Conectividad de java a base  de datos(jdbc)[ES] Conectividad de java a base  de datos(jdbc)
[ES] Conectividad de java a base de datos(jdbc)
 

Ähnlich wie Entrenamiento en acceso a datos extremo con ASP.NET

Ähnlich wie Entrenamiento en acceso a datos extremo con ASP.NET (20)

Ado
AdoAdo
Ado
 
Ado.Net
Ado.NetAdo.Net
Ado.Net
 
Proveedor act1 uni2_daw_6a
Proveedor act1 uni2_daw_6aProveedor act1 uni2_daw_6a
Proveedor act1 uni2_daw_6a
 
8. Acceso A Datos Con Microsoft Ado.Net
8.  Acceso A Datos Con Microsoft Ado.Net8.  Acceso A Datos Con Microsoft Ado.Net
8. Acceso A Datos Con Microsoft Ado.Net
 
Vb net bd_2005_02
Vb net bd_2005_02Vb net bd_2005_02
Vb net bd_2005_02
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
 
ADO
ADOADO
ADO
 
Jdbc
JdbcJdbc
Jdbc
 
3. Curso Java JDBC (Bases de datos) - Curso 2005-2006
3. Curso Java JDBC (Bases de datos) - Curso 2005-20063. Curso Java JDBC (Bases de datos) - Curso 2005-2006
3. Curso Java JDBC (Bases de datos) - Curso 2005-2006
 
LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.
 
Base de datos
Base de datosBase de datos
Base de datos
 
Proveedor manuel
Proveedor manuelProveedor manuel
Proveedor manuel
 
Active x data object ado.net
Active x data object ado.netActive x data object ado.net
Active x data object ado.net
 
TUTORIAL DE ADO.NET MUY BUENO
TUTORIAL DE ADO.NET MUY BUENOTUTORIAL DE ADO.NET MUY BUENO
TUTORIAL DE ADO.NET MUY BUENO
 
ADO .NET
ADO .NETADO .NET
ADO .NET
 
Clase conexion java - Analisis de Sistemas
Clase conexion java - Analisis de SistemasClase conexion java - Analisis de Sistemas
Clase conexion java - Analisis de Sistemas
 
Trabajo Connectar
Trabajo ConnectarTrabajo Connectar
Trabajo Connectar
 
Prepared statement
Prepared statementPrepared statement
Prepared statement
 
Unidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde javaUnidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde java
 
Aplicación Cliente - Servidor / GUI - Consola
Aplicación Cliente - Servidor / GUI - ConsolaAplicación Cliente - Servidor / GUI - Consola
Aplicación Cliente - Servidor / GUI - Consola
 

Mehr von Haaron Gonzalez

Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint FrameworkHaaron Gonzalez
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint FrameworkHaaron Gonzalez
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint FrameworkHaaron Gonzalez
 
Microsoft 365, la herramienta moderna para la oficina moderna
Microsoft 365, la herramienta moderna para la oficina modernaMicrosoft 365, la herramienta moderna para la oficina moderna
Microsoft 365, la herramienta moderna para la oficina modernaHaaron Gonzalez
 
Target SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkTarget SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkHaaron Gonzalez
 
Target SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkTarget SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkHaaron Gonzalez
 
SharePoint as Development Platform for the Modern Intranet
SharePoint as Development Platform for the Modern IntranetSharePoint as Development Platform for the Modern Intranet
SharePoint as Development Platform for the Modern IntranetHaaron Gonzalez
 
Introduction to Office Development Topics
Introduction to Office Development TopicsIntroduction to Office Development Topics
Introduction to Office Development TopicsHaaron Gonzalez
 
SharePoint Framework, paso a paso
SharePoint Framework, paso a pasoSharePoint Framework, paso a paso
SharePoint Framework, paso a pasoHaaron Gonzalez
 
SharePoint Framework at a glance
SharePoint Framework at a glanceSharePoint Framework at a glance
SharePoint Framework at a glanceHaaron Gonzalez
 
Futuro de Desarrollo en SharePoint
Futuro de Desarrollo en SharePointFuturo de Desarrollo en SharePoint
Futuro de Desarrollo en SharePointHaaron Gonzalez
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint FrameworkHaaron Gonzalez
 
Soluciones de flujo de trabajo basada en formularios con nintex
Soluciones de flujo de trabajo basada en formularios con nintexSoluciones de flujo de trabajo basada en formularios con nintex
Soluciones de flujo de trabajo basada en formularios con nintexHaaron Gonzalez
 
La oficina moderna y el surgimiento de equipos dinamicos
La oficina moderna y el surgimiento de equipos dinamicosLa oficina moderna y el surgimiento de equipos dinamicos
La oficina moderna y el surgimiento de equipos dinamicosHaaron Gonzalez
 
Enhance the way people collaborate with documents in SharePoint
Enhance the way people collaborate with documents in SharePoint Enhance the way people collaborate with documents in SharePoint
Enhance the way people collaborate with documents in SharePoint Haaron Gonzalez
 
Enhance the way people collaborate with documents in share point
Enhance the way people collaborate with documents in share pointEnhance the way people collaborate with documents in share point
Enhance the way people collaborate with documents in share pointHaaron Gonzalez
 
Planeación de Intranet con SharePoint
Planeación de Intranet con SharePointPlaneación de Intranet con SharePoint
Planeación de Intranet con SharePointHaaron Gonzalez
 
Introduction to Intranet Planning
Introduction to Intranet PlanningIntroduction to Intranet Planning
Introduction to Intranet PlanningHaaron Gonzalez
 
Introduction to Content Search Web Part
Introduction to Content Search Web PartIntroduction to Content Search Web Part
Introduction to Content Search Web PartHaaron Gonzalez
 
Effective SharePoint Tools for Consultants
Effective SharePoint Tools for ConsultantsEffective SharePoint Tools for Consultants
Effective SharePoint Tools for ConsultantsHaaron Gonzalez
 

Mehr von Haaron Gonzalez (20)

Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint Framework
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint Framework
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint Framework
 
Microsoft 365, la herramienta moderna para la oficina moderna
Microsoft 365, la herramienta moderna para la oficina modernaMicrosoft 365, la herramienta moderna para la oficina moderna
Microsoft 365, la herramienta moderna para la oficina moderna
 
Target SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkTarget SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint Framework
 
Target SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkTarget SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint Framework
 
SharePoint as Development Platform for the Modern Intranet
SharePoint as Development Platform for the Modern IntranetSharePoint as Development Platform for the Modern Intranet
SharePoint as Development Platform for the Modern Intranet
 
Introduction to Office Development Topics
Introduction to Office Development TopicsIntroduction to Office Development Topics
Introduction to Office Development Topics
 
SharePoint Framework, paso a paso
SharePoint Framework, paso a pasoSharePoint Framework, paso a paso
SharePoint Framework, paso a paso
 
SharePoint Framework at a glance
SharePoint Framework at a glanceSharePoint Framework at a glance
SharePoint Framework at a glance
 
Futuro de Desarrollo en SharePoint
Futuro de Desarrollo en SharePointFuturo de Desarrollo en SharePoint
Futuro de Desarrollo en SharePoint
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint Framework
 
Soluciones de flujo de trabajo basada en formularios con nintex
Soluciones de flujo de trabajo basada en formularios con nintexSoluciones de flujo de trabajo basada en formularios con nintex
Soluciones de flujo de trabajo basada en formularios con nintex
 
La oficina moderna y el surgimiento de equipos dinamicos
La oficina moderna y el surgimiento de equipos dinamicosLa oficina moderna y el surgimiento de equipos dinamicos
La oficina moderna y el surgimiento de equipos dinamicos
 
Enhance the way people collaborate with documents in SharePoint
Enhance the way people collaborate with documents in SharePoint Enhance the way people collaborate with documents in SharePoint
Enhance the way people collaborate with documents in SharePoint
 
Enhance the way people collaborate with documents in share point
Enhance the way people collaborate with documents in share pointEnhance the way people collaborate with documents in share point
Enhance the way people collaborate with documents in share point
 
Planeación de Intranet con SharePoint
Planeación de Intranet con SharePointPlaneación de Intranet con SharePoint
Planeación de Intranet con SharePoint
 
Introduction to Intranet Planning
Introduction to Intranet PlanningIntroduction to Intranet Planning
Introduction to Intranet Planning
 
Introduction to Content Search Web Part
Introduction to Content Search Web PartIntroduction to Content Search Web Part
Introduction to Content Search Web Part
 
Effective SharePoint Tools for Consultants
Effective SharePoint Tools for ConsultantsEffective SharePoint Tools for Consultants
Effective SharePoint Tools for Consultants
 

Kürzlich hochgeladen

Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 

Kürzlich hochgeladen (20)

Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 

Entrenamiento en acceso a datos extremo con ASP.NET

  • 1. ENTRENAMIENTO EN ACCESO A DATOS EXTREMO CON ASP.NET Haarón Gonzalez Microsoft MCP, MCAD, MCT, MCTS y MVP
  • 2. GENERALES  Sesión de 4 horas  No habrá descanso  Es un entrenamiento no una capacitación  Puedes preguntar en cuanto surja una duda  Requieres de Visual Studio 2008 o superior y SQL Express o superior  Esta sesión se esta transmitiendo en línea y quedara grabada
  • 3. QUE ES LA VINCULACIÓN DE DATOS O DATABINDING Proceso de carga datos provenientes de una fuente de datos en un control  En .NET los controles que soportan databinding cuentan con  la propiedad DataSource donde asignamos los datos  el método DataBind()para proceder a cargarlos  Para vincular datos en un control ya sea con código o declarativamente establecemos la propiedad DataSource e invocamos el método DataBind()
  • 4. EJERCICIO 1 – CARGANDO DATOS PROGRAMATICAMENTE 1. Creamos proyecto de tipo Web Site en Visual Studio 2. Agregamos una pagina aspx 3. Arrastramos un control GridView 4. Programamos código para invocar la fuente de datos en el evento Page_Load
  • 5. Dim connectString As String = "Data Source=.sqlexpress;Initial Catalog=Northwind;Integrated Security=True" Using cnn As New SqlConnection(connectString) Using cmd As New SqlCommand("select top 30 * from customers", cnn) cnn.Open() Dim reader As SqlDataReader = cmd.ExecuteReader() GridView1.DataSource = reader GridView1.DataBind() End Using End Using
  • 6. string connectString = "Data Source=.sqlexpress;Initial Catalog=Northwind;Integrated Security=True"; using (SqlConnection cnn = new SqlConnection(connectString)) { using (SqlCommand cmd = new SqlCommand("select top 30 * from customers", cnn)) { cnn.Open(); SqlDataReader reader = cmd.ExecuteReader(); GridView1.DataSource = reader; GridView1.DataBind(); } }
  • 7. COMO FUNCIONA EL DATABINDING Control DataSource Fuente DataBind() de Cache Datos local de datos Render()
  • 8. ¿QUE CONTROLES DE ASP.NET SOPORTAN DATABINDING?  Solo algunos controles de ASP.NET lo soportan  Pueden vincularse a cualquier fuente de datos que implemente la interface IEnumerable así como clases DataTable o DataSet Controles HtmlSelect Array que CheckBoxList ArrayList soportan BulletedList HashTable vinculación GridView Queue DetailsView SortedList FormView Vinculados a Stack ListView StringCollection DataList DataView Repeater DataTable DropDownList DataSet ListBox IDataReader RadioButtonList IEnumerable
  • 9. EJERCICIO 2 – CARGANDO DATOS DE UN ARREGLO PROGRAMÁTICAMENTE  Agregamos una nueva pagina aspx  En el markup arrastramos un control BulletedList  En el codebehind agregamos un arreglo de strings y lo inicializamos  Asignamos la propiedad DataSource y ejecutamos DataBind()  Corremos el aplicativo y revisamos el funcionamiento  Agregamos un ListBox, CheckBoxList y asignamos su propiedad DataSource  Usamos Page.DataBind();
  • 10. Dim numberArray As String() = New String() {"1", "2", "3", "4"} numberListBox.DataSource = numberArray numberListBox.DataBind()
  • 11. protected void Page_Load(object sender, EventArgs e) { string[] numberArray = new string[] {"1","2","3","4" }; numberListBox.DataSource = numberArray; numberListBox.DataBind(); }
  • 12. DATABINDING DE TIPO TEXTO VALOR Para los controles que soportan cargar solo una dimensión de datos (DropDown, ListBox, etc) también se pueden vincular mediante  Inicialización de la propiedad DataTextField al campo que queremos desplegar en el control  Inicialización de la propiedad DataValueField al campo que queremos usar como el valor identificador de un elemento
  • 13. Dim dsn As String = "Data Source=.sqlexpress;Initial Catalog=Northwind;Integrated Security=True" Using cnn As New SqlConnection(dsn) Using cmd As New SqlCommand("SELECT TOP 20 * FROM PRODUCTS", cnn) cnn.Open() ddl.DataSource = cmd.ExecuteReader() ddl.DataTextField = ProductName ddl.DataValueField = ProductId ddl.DataBind() End Using End Using
  • 14. string dsn = @"Data Source=.sqlexpress;Initial Catalog=Northwind;Integrated Security=True"; using (SqlConnection cnn = new SqlConnection(dsn)) { using (SqlCommand cmd = new SqlCommand("SELECT TOP 20 * FROM PRODUCTS",cnn)) { cnn.Open(); ddl.DataSource = cmd.ExecuteReader(); ddl.DataTextField = “ProductName”; ddl.DataValueField = “ProductId”; ddl.DataBind(); } }
  • 15. EJERCICIO 3 – CARGANDO DATOS DE TIPO TEXTO VALOR  Usaremos la primer pagina aspx que creamos y agregamos un nuevo control de tipo DropDownList  En el código asignamos las propiedades DataSource, DataTextFIeld y DataValueField  Invocamos el método DataBind()  Corremos  Para seleccionar algún elemento vinculado de forma programática usamos la colección Items e invocamos el método FindByText o FindByValue numberListBox.Items.FindByText("3").Selected = true;
  • 16. ORIGEN DE DATOS DECLARATIVA  Las fuentes de datos declarativas son una característica agregada en ASP.NET 2.0  SqlDataSource, ObjectDataSource, XmlDataSource, LinqDataSource junto con Visual Studio 2005 en adelante ofrecen un soporte enriquecido para la vinculación y manipulación enriquecida de los campos vinculados
  • 17. ORIGEN DE DATOS DECLARATIVA Sql- Object- Access- Xml- SiteMap- DataSource DataSource DataSource DataSource DataSource Data Site Map Component Provider SQL Any Access XML Site Maps Databases Data Databases Data
  • 18. VINCULANDO A LAS FUENTES DE DATOS DECLARATIVAS A vinculación de datos puede realizarse con o sin código alguno  Soporte desde el diseñador  Integración con herramientas como server Explorer  Modelo de vinculación fácil de extenderse
  • 19. <asp:GridView ID="_productsView" DataSourceID="_productsDataSource" runat="server"> </asp:GridView> <asp:SqlDataSource DataSourceMode="DataReader" ID="_productsDataSource" ConnectionString="Data Source=.sqlexpress;Initial Catalog=Northwind;Integrated Security=True" SelectCommand="SELECT TOP 20 * FROM PRODUCTS" runat="server"> </asp:SqlDataSource>
  • 20. EJERCICIO 4 – DATABINDING DECLARATIVO CON CÓDIGO  Creamos una nueva pagina aspx  Arrastramos un GridView  Configuramos un nuevo SqlDataSource mediante el asistente  Elegimos la tabla Customers  Exploramos las distintas opciones de ordenamiento, generación y filtrado  Y con codification cargamos el datasource GridView1.DataSource = SqlDataSource1.Select(new DataSourceSelectArguments()); GridView1.DataBind();
  • 21. EJERCICIO 5 – DATABINDING DECLARATIVO SIN CÓDIGO  Sobre la ultima pagina creada  Editamos la declaración del GridView para especificar la propiedad DataSourceID igual al nombre de nuestro control SqlDataSource  No olvidemos comentar el código anterior
  • 22. COMO FUNCIONA LA VINCULACIÓN DECLARATIVA A LAS FUENTES DE DATOS Petición GridView IDataSource SqlDataSource CreateChildControls() EnsureDataBind() Select DataBind() Cache Database local de datos Render
  • 23. SQLDATASOURCE  Soporta todas las interacciones con SQL como lectura, escritura, actualización, eliminación, filtrado, cacheo, ordenado  Cuando el DataSource cuenta con algunas de estas propiedades establecidas mas soporte y funcionalidad es posible en los controles Propiedad Descripcion ProviderName System.Data.SqlClient, System.Data.OleDb, System.Data.OracleClient DataSourceMod DataSet o DataReader e SelectCommma Query o el nombre de un nd procedimiento almacenado para seleccionar datos InsertCommand Query o el nombre de un procedimiento almacenado para insertar datos DeleteCommand Query o el nombre de un procedimiento almacenado para eliminar datos UpdateComman Query o el nombre de un
  • 24. EJERCICIO 6 – MANEJANDO LA INSERCIÓN DE DATOS  Creamos una nueva pagina aspx  Configuramos un nuevo SqlDataSource con la funcionalidad de que se auto genere el insert, update, delete, read  Verificar los InserParameters y los tipos de parámetros en general  Invocar programáticamente el proceso protected void Button1_Click(object sender, EventArgs e) de inserción { SqlDataSource1.InsertParameters["CustomerId"].DefaultValue = "aaaa"; SqlDataSource1.InsertParameters["CompanyName"].DefaultValue = "aaaa"; SqlDataSource1.InsertParameters["ContactName"].DefaultValue = "aaaa"; SqlDataSource1.InsertParameters["ContactTitle"].DefaultValue = "aaaa"; SqlDataSource1.Insert(); }
  • 25. GRIDVIEW  Muestra datos en forma tabular, es el sucesor del control DataGrid  Generación de columnas implícita y explicita con capacidad de manejar columnas especiales como  ImageField  CheckBoxField  HyperlinkField  TemplateField  Interacción inteligente con controles DataSource para que de manera predeterminada soporte  Paginación automática, edición, eliminación y ordenamiento  De forma automática a los datos vinculados y retorna una Tabla con columnas y renglones en formato HTML 
  • 26. EJERCICIO 7 – GENERANDO GRIDVIEW DIRECTAMENTE DESDE SERVER EXPLORER  Creamos una nueva pagina aspx  Abrimos el server explores y buscamos la base de datos de Northwind y buscamos la tabla Customers  Arrastramos la tabla Customers a la superficie de diseño  Visualizamos las opciones del GridView  Editamos las columnas para incluir una de tipo hipervínculo para implementar el maestro
  • 27.
  • 28. DETAILSVIEW  Soporta el despliegue y manipulación de un solo renglón  Útil para escenarios maestro detalle  Soporta paginado en caso de mostrar mas de un renglón, edición, eliminación e inserción  Genera html en formato de tablas, columnas y renglones
  • 29. EJERCICIO 8 – IMPLEMENTANDO DETALLE  Creamos una nueva pagina aspx  Abrimos el server explores y buscamos la base de datos de Northwind y buscamos la tabla Customers  Arrastramos la tabla Customers a la superficie de diseño  Visualizamos las opciones del GridView  Editamos las columnas para incluir una de tipo hipervínculo
  • 30. TEMPLATE  Los controles GridView, DetailsView, ListView, Repeater y DataList permiten la personalización de la apariencia y el manejo de estador a través de plantillas  Provee el marco sobre el cual se despliegan elementos y nos da un grado de flexibilidad para generar nuestro contenido  Nos permite especificar exactamente como se desplegar la información  Maneja el marco y la vinculación, genera tablas solo que con la posibilidad de personalizar la celda  La sintaxis Eval y Bind se usan para extraer datos del renglón actual, Eval obtiene información de solo lectura y Bind es de lectura y escritura, two way binding.
  • 31. Plantilla vinculada del Fuente DataBind() de control de Datos DataSource Por cada rengon en la fuente de datos Escribe los datos de acuerdo a nuestra especificacion
  • 32. COMO EXTRAER VALORES DEL LA VINCULACION  Los controles que ubicamos en una plantilla necesitan relacionarse con el renglón actual que esta siendo vinculado  Utilizamos la nomenclatura para crear la ventana de acceso a los datos del renglón vinculándose <%# expresion %>  Usamos Eval para extraer los datos  Es factible también programáticamente obtener y establecer los valores del renglón vinculándose
  • 33. EJERCICIO 9 – TRABAJANDO CON RENGLONES VINCULADOS  Creamos una nueva pagina aspx  Abrimos el server explores y buscamos la base de datos de Northwind y buscamos la tabla Customers  Arrastramos la tabla Customers a la superficie de diseño  Visualizamos las opciones del GridView  Agregamos una columna de tipo Plantilla  Visualizamos los distintos modalidades como ItemTempalte, AlternateTemplate, EditTemplate, etc  Agregamos un control de tipo Etiqueta en el estado ItemTemplate y en las propiedades emergentes de la etiqueta especificamos la vinculación con que columna <asp:TemplateField> <ItemTemplate> <asp:Label ID="Label1" runat="server" Text='<%# Eval("ContactTitle") %>'></asp:Label> </ItemTemplate> </asp:TemplateField>
  • 34. EJERCICIO 9 – TRABAJANDO CON RENGLONES VINCULADOS  Agregamos un botón justo aun lado de la etiqueta y especificamos su nombre como cmdOpcion  Dentro del grid buscamos el evento RowDataBound el cual se dispara por cada renglón que se esta vinculando  Programáticamente especificamos propiedades al botón recién agregado protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { Button btn = e.Row.FindControl("cmdOpcion") as Button; btn.Attributes.Add("onclick", "return confirm('hola');"); } }
  • 35. REPEATER  Este control nos da la posibilidad de manipular a nuestro antojo el HTML generado por el control  Soporta el concepto de plantillas  Trabaja con los conceptos de vinculación mediante datasources solo que nos da la libertad de generar y dibujar el HTML que se estará generando <asp:DataList ID="DataList1" runat="server" DataKeyField="EmployeeID" DataSourceID="SqlDataSource1"> <ItemTemplate> EmployeeID: <asp:Label ID="EmployeeIDLabel" runat="server"Text='<%# Eval("EmployeeID") %>' /> <br /> LastName: <asp:Label ID="LastNameLabel" runat="server" Text='<%# Eval("LastName") %>' /> <br /> FirstName: <asp:Label ID="FirstNameLabel" runat="server" Text='<%# Eval("FirstName") %>' /> </ItemTemplate> </asp:DataList>
  • 36. EJERCICIO 10 – TRABAJANDO CON REPEATER  ///
  • 37. DATALIST  Es la combinación de la flexibilidad de Repetar con la estructura de un GridVIew  Permite mostrar a manera de lista vertical u horizontal cualquier html creado como plantilla dentro del control  Es util para acomodar elementos de forma estructurada en la interface de usuario  Dibuja cada renglón de la fuente de datos como una celda  Requiere que se define por lo menos la plantilla ItemTemplate  Usamos la propiedad RepeatColumn para especificar cuantos elementos queremos incluir en el renglón  Tambien contamos con RepeatDirectin para especificar la dirección en que el control s eva generandoi
  • 38. EJERCICIO 11 – TRABAJANDO CON DATALIST  ///
  • 39. PARAMETROS DE DATASOURCE  Los controles DataSource soporta colección de parámetros para cada distinta operación  Una colección de parámetros separada para actualización, insertado, seleccionado, eliminado  Las fuentes de parámetros pueden ser controles, las cookies, la misma forma, datos de perfil y/o cadena querystring
  • 40.
  • 41. PARÁMETROS  Existen diversas tipos de parámetros  Control Parameter  Valor que proviene de cualquier control del lado servidor de una pagina  Cookie Parameter  Valor que proviene de algún dato almacenado en una cookie  Form Parameter  Valor proveniente de una variable HTTP POST  Profile Parameter  Valor proveniente del perfil del usuario de alguna propiedad del perfil  QueryString Parameter  Valor obtenido de la barra de direcciones url  Session Parameter  Valor obtenido de alguna variable de sesión
  • 42. EJERCICIO 12 – TRABAJANDO CON PARAMETROS FILTER  Agregamos una nueva pagina aspx  Arrastramos la tabla de Customers del server explorer a la pagina  Agregamos un cuadro de texto y un botón de buscar  Seleccionamos nuestro SqlDataSource y buscamos la propiedad FilterExpression y establecemos el valor CompanyName LIKE ‘%{0}%’  Configuramos el parámetros
  • 43. EVENTOS DE DATASOURCE  Los DataSources exponen eventos, útiles para personalizar el comportamiento y la interacción que el DataSource va teniendo  Es factible entonces agregar parámetros programáticamente  Desempeñar operaciones cuando se realiza satisfactoriamente un insert, update, delete, etc.  Impedir la ejecución de alguna operación protected basado en alguna validación void SqlDataSource1_Inserting(object sender, SqlDataSourceCommandEventArgs e) { e.Command.Parameters["CompanyName"].Value = "hola"; // tambien se puede cancelar la operacion usando e.Cancel = true; }
  • 44. VINCULACION DE DOS LADOS  LA sintaxis Bind() se puede usar en controles que soportan Insert/Update/Delete  Es como Eval() solo que este va dos veces  Durante el Select se comporta como Eval()  Durante el Inser/Update los valores son mapeados en parámetros y usados para actualizar  Se usan en los controles mas comunes como GridView, DetailsView, FormVIew, ListVIew <ItemTemplate> CustomerID: <asp:Label ID="CustomerIDLabel" runat="server" Text='<%# Eval("CustomerID") %>' /> <br /> CompanyName: <asp:Label ID="CompanyNameLabel" runat="server" Text='<%# Bind("CompanyName") %>' /> <br /> ContactName: <asp:Label ID="ContactNameLabel" runat="server" Text='<%# Bind("ContactName") %>' />
  • 45. EJERCICIO 13 – IMPLEMENTANDO UPDATE EN GRIDVIEW CON CONTROLES ADICIONALES
  • 46. FORMVIEW  Similar al DetailsView, despliega un renglón  No hay generado de HTML por default, tenemos que especificar su plantilla para desplegar su contenido  Útil cuando queremos personalizar el despliegue visual
  • 47. EJERCICIO 14 – CREANDO UN ALTA DE REGISTROS  Agregamos una nueva pagina aspx  Arrastramos un DetailsView y configuramos el insert explicando que hay que hacer template cada Field si quisiéramos hacer uso de los validadores  Usamos mejor un FormView y editamos su EditMode a Insert  Agregamos validadores
  • 48. LISTVIEW  Lo mejor de todos los controles que soportan vinculación a datos  Control orientado a plantilla  Puede remplazar a cualquier control que soporta vinculación de datos Se define el marco Se define el elemento Se define su plantilla de muestra
  • 49. DATAPAGER  Desacopla la interface de paginación del ListView agregando un nuevo control especifico para esto  Permite usar las opciones de navegación en donde queramos  Podemos crear diversas opciones de pagina para una misma control <asp:DataPager ID="DataPager1" runat="server"> <Fields> <asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True" ShowNextPageButton="False" ShowPreviousPageButton="False" /> <asp:NumericPagerField /> <asp:NextPreviousPagerField ButtonType="Button" ShowLastPageButton="True" ShowNextPageButton="False" ShowPreviousPageButton="False" /> </Fields> </asp:DataPager>
  • 50. XMLDATASOURCE  Permite vincularlos a fuentes de datos dinstintas a bases de datos  Special para trabajar con datos XML <asp:ListView ID="ListView1" DataSourceID="XmlDataSource1" runat="server"> <LayoutTemplate> <asp:PlaceHolder runat="server" ID="itemPlaceholder" /> </LayoutTemplate> <ItemTemplate> <a href="<%# XPath("link") %>"> <%# XPath("title") %></a><br /> <p ><%# XPath("description") %></p> <br /> </ItemTemplate> </asp:ListView> <asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="http://feeds.feedburner.com/msmvps/gXSK" XPath="/rss/channel/item"> </asp:XmlDataSource>
  • 51. EJERCICIO 14 – CONSUMIENDO RSS
  • 52. XMLDATASOURCE  Podemoa usar este control para contar con catalogos de datos que sabemo que no cambiaran constantemente  No es necesario que se encuentren en la base de datos como tablas aquellos catalogos o elmentos de informacion  Lista de estado civil  Sexo  Tipos de pago  Etc…
  • 53. EJERCICIO 15 – USANDO CATALOGOS  Creamos una nueva pagina  Agregamos la carpeta App_Data  Agregamos una carpeta llamada xml  Agregamos un nuevo archivo xml llamado StstusMarital.xml  Agregamos el siguiente XML  Agregamos un nuevo aspx <?xml version="1.0" encoding="utf-8" ?> <StatusMarital>  Arrastramos un XmlDataSource y <item Name="" Value="0" /> establecemos propiedad DataFile <item Name="Married" Value="1" /> <item Name="Single" Value="2" />  Agregamos algún DropDownList <item Name="Divorced" Value="3" /> <item Name="Widowed" Value="4" />  Vinculamos <item Name="Other" Value="5" /> </StatusMarital>
  • 54. XMLDATASOURCE <Bookstore> <genre name="Business"> <book ISBN="BU1032" Title="The Busy Executive's Database Guide" Price="19.99"> <chapter num="1" name="Introduction"> Abstract... </chapter> <chapter num="2" name="Body"> Abstract... </chapter> <chapter num="3" name="Conclusion"> Abstract... </chapter> </book> </genre> </book> <asp:XmlDataSource ID="XmlDataSource2" runat="server" DataFile="~/App_Data/xml/Bookstore.xml"></asp:XmlDataSource> <asp:TreeView ID="TreeView1" runat="server" DataSourceID="XmlDataSource2"> <DataBindings> <asp:TreeNodeBinding DataMember="chapter" ValueField="name" /> <asp:TreeNodeBinding DataMember="book" ValueField="title" /> <asp:TreeNodeBinding DataMember="genre" ValueField="name" /> </DataBindings> </asp:TreeView>
  • 55. EJERCICIO 16 – USANDO ARBOLES
  • 56. OBJECTDATASOURCE  Soporta la vinculación a un objeto de capa media Control Objetos ObjectDataSource Data-bound Objetos <asp:ObjectDataSource ID=“obj” runat=“server” SelectMethod=“ObtenerDatos” TypeName=“MiClase” /> Fuente de public static class MiClase { Datos static public List<Persona> OntenerDatos() { List<Persona> personas = new List<Persona>(); // agregamos personas return personas; } }
  • 57. EJERCICIO 17 – CREANDO CAPA DE DATOS  Agregamos una carpeta de tipo App_Code  Agregamos un DataSet  Agregamos DataTableAdapter para tabla customer  Compilamos  Agregamos nueva paginas aspx  Agregamos ObJectDataSource  Configuramos ObjectDataSource
  • 58. ENTRENAMIENTO EN ACCESO A DATOS EXTREMO CON ASP.NET Haarón Gonzalez Microsoft MCP, MCAD, MCT, MCTS y MVP