SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
12/09/2011




                                                            Arquitectura

                                                     WindowsPhone 7.0
                                                              Aplicación                            Almacenamiento
                                                                                                        aislado
                                                        IsolatedStorageSettings

                                                        (System.IO.IsolatedStorage)
                                                                                                        nombre/valor
                                                                                                        nombre/valor

                                                          IsolatedStorageFile
                                                                                                    ficheros y directorios
                                                        (System.IO.IsolatedStorage)
                                                                                                    ficheros y directorios




       Arquitectura                                         Arquitectura

 ¿Qué podemos almacenar en el IsolatedStorage?      Windows Phone Mango
  Pares de datos nombre – valor                                                                    Almacenamiento
                                                              Aplicación
    Parámetros de configuración …                                                                      aislado
                                                        IsolatedStorageSettings
  Ficheros
    Archivos XML, objetos serializados …               (System.IO.IsolatedStorage)
                                                                                                        nombre/valor

                                                          IsolatedStorageFile
 En Windows Phone Mango reaparece el concepto de
                                                        (System.IO.IsolatedStorage)
  base de datos                                                                                      ficheros y directorios

                                                              DataContext

                                                            (System.Data.Linq)        LINQ to SQL
                                                                                                     base de datos local




                                                                                                                               1
12/09/2011




         Arquitectura                                                    LINQ to SQL

 El acceso a datos se realiza mediante LINQ to SQL                LINQ es una implementación de Object Relational
                                                                    Mapping
                                                                    Mapea objetos relacionales en un modelo orientado a objetos
                                            Almacenamiento           para trabajar con datos
      Aplicación
                                                aislado
      DataContext
                          LINQ to SQL
    (System.Data.Linq)
                                            base de datos local                      LINQ to SQL




                                                                         Comparación con la versión de
         LINQ to SQL
                                                                         escritorio
 LINQ permite realizar operaciones con objetos que
  después se persisten en la base de datos.                                            SQL Server           Windows Phone
 La aplicación utiliza LINQ para manejar los datos.
   LINQ to SQL lo traduce a T-SQL para que se pueda ejecutar       Lugar de
                                                                                   Servicio en background   Proceso de aplicación
    en la base de datos                                             ejecución

                                                                   Acceso a la                              Sólo la aplicación que
                                                                                     Cualquier aplicación
                                                                  base de datos                                    la utiliza
                                                    Base
     Aplicación             LINQ to SQL              de
                                                    datos           Consultas               T-SQL               LINQ to SQL




                                                                                                                                      2
12/09/2011




             DataContext                                                          Cadenas de conexión

 LINQ permite realizar operaciones en la base de                         Especifica parámetros de configuración de la base de
  datos a través de un objeto DataContext asociado.                        datos
 El objeto principal es DataContext
     Representa la base de datos mediante entidades                        Parámetro                          Descripción
     LINQ to SQL mapea una base de datos en un modelo de
      objetos
                                                                              datasource           Ruta del archivo de la base de datos local
          Base de datos  DataContext
          Tabla  clase del DataContext
                                                                                                       Contraseña de la base de datos.
          Columna  propiedad de la clase                                    Password
                                                                                                      Encripta la base de datos al crearla.
          Relación  propiedad de la clase
     La estructura de la base de datos se define en el objeto                  Mode            Read Write, Read Only, Exclusive, Share Read
      DataContext mediante atributos de mapeo




             Crear la base de datos                                               Utilizar la base de datos

 Una vez creado el objeto DataContext y conocida la                      Seleccionar datos
  cadena de conexión…
                                                                         // Define la consulta para obtener todos los elementos ToDo
// Crea la base de datos si todavía no existe.                           var toDoItemsInDB = from ToDoItem todo in toDoDB.ToDoItems
using (ToDoDataContext db = new ToDoDataContext("isostore:/ToDo.sdf"))                       select todo;
{
     if (db.DatabaseExists() == false)                                   // Ejecuta la consulta y añade el resultado a la colección.
                                                 Indica que el           ToDoItems = new ObservableCollection<ToDoItem>(toDoItemsInDB);
     {
                                              archivo de la base
           // Crea la base de datos.          de datos está en el
           db.CreateDatabase();                almacenamiento
     }                                              aislado
}




                                                                                                                                                      3
12/09/2011




         Utilizar la base de datos

 Insertar datos

// Crea un nuevo elemento   to-do
ToDoItem newToDo = new ToDoItem {ItemName = "nuevo"};
                                                        Se añade el nuevo
                                                          elemento a la
// Añade el elemento to-do a la colección.                  colección       DEMO
ToDoItems.Add(newToDo);
                                                          Se inserta el
// Añade el elemento to-do a la base de datos local.       elemento
db.ToDoItems.InsertOnSubmit(newToDo);
                                              Hasta que no se realiza la
// Guarda los cambios en la base de datos.   llamada a SubmitChanges()
                                             no se insertan los datos en
db.SubmitChanges();
                                                        la BD




         Recursos

 Centro de desarrollo de WP7 en MSDN
http://msdn.microsoft.com/es-es/windowsphone/default.aspx

 AppHub
http://create.msdn.com/

 Windows Phone Developer Blog
http://windowsteamblog.com/windows_phone/b/wpdev
 MobileNUG
http://www.mobilenug.es

 Forums
http://forums.create.msdn.com/forums/




                                                                                           4

Más contenido relacionado

La actualidad más candente

La actualidad más candente (17)

Administración de Oracle - Tema 01 - Introducción
Administración de Oracle - Tema 01 - IntroducciónAdministración de Oracle - Tema 01 - Introducción
Administración de Oracle - Tema 01 - Introducción
 
Motor De Bases De Datos Oracle
Motor De Bases De Datos OracleMotor De Bases De Datos Oracle
Motor De Bases De Datos Oracle
 
Ansi Sql
Ansi SqlAnsi Sql
Ansi Sql
 
Diapositivas de ado.net
Diapositivas de ado.netDiapositivas de ado.net
Diapositivas de ado.net
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Versiones de sql
Versiones de sqlVersiones de sql
Versiones de sql
 
Ado net
Ado netAdo net
Ado net
 
Access contra MySQL
Access contra MySQLAccess contra MySQL
Access contra MySQL
 
Ansi Sql
Ansi SqlAnsi Sql
Ansi Sql
 
Motores de bases de datos
Motores de bases de datosMotores de bases de datos
Motores de bases de datos
 
Bdp3
Bdp3Bdp3
Bdp3
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos laboratorio
Base de datos laboratorioBase de datos laboratorio
Base de datos laboratorio
 
Base de datos.
Base de datos.Base de datos.
Base de datos.
 
Las principales bases de datos existentes :V
Las principales bases de datos existentes  :VLas principales bases de datos existentes  :V
Las principales bases de datos existentes :V
 
Sgbdoo
SgbdooSgbdoo
Sgbdoo
 
sql server
sql serversql server
sql server
 

Destacado (12)

Tipos de archivos o ficheros
Tipos de archivos o ficherosTipos de archivos o ficheros
Tipos de archivos o ficheros
 
tipos de ficheros
tipos de ficherostipos de ficheros
tipos de ficheros
 
6 almacenamiento
6 almacenamiento6 almacenamiento
6 almacenamiento
 
Base de datos pres..
Base de datos pres..Base de datos pres..
Base de datos pres..
 
Exposicion eje tematico 5
Exposicion eje tematico 5Exposicion eje tematico 5
Exposicion eje tematico 5
 
Dispositivos de almacenamiento de un computador
Dispositivos de almacenamiento de un computadorDispositivos de almacenamiento de un computador
Dispositivos de almacenamiento de un computador
 
Gestión de archivos
Gestión de archivosGestión de archivos
Gestión de archivos
 
Fichero
FicheroFichero
Fichero
 
Gestión de Almacenamiento
Gestión de AlmacenamientoGestión de Almacenamiento
Gestión de Almacenamiento
 
Ficheros y Directorios
Ficheros y DirectoriosFicheros y Directorios
Ficheros y Directorios
 
ARCHIVOS DIGITALES CONCEPTOS BÁSICOS
ARCHIVOS DIGITALES   CONCEPTOS BÁSICOSARCHIVOS DIGITALES   CONCEPTOS BÁSICOS
ARCHIVOS DIGITALES CONCEPTOS BÁSICOS
 
Ficheros y carpetas
Ficheros y carpetasFicheros y carpetas
Ficheros y carpetas
 

Similar a Arquitectura de almacenamiento y acceso a datos en Windows Phone

Similar a Arquitectura de almacenamiento y acceso a datos en Windows Phone (20)

Bases de datos
Bases de datosBases de datos
Bases de datos
 
Fnavarrete s2 1
Fnavarrete s2 1Fnavarrete s2 1
Fnavarrete s2 1
 
Sistemas de gestión de base de datos
Sistemas de gestión de base de datosSistemas de gestión de base de datos
Sistemas de gestión de base de datos
 
How To Split The Monolith - From monolith to microservices
How To Split The Monolith - From monolith to microservicesHow To Split The Monolith - From monolith to microservices
How To Split The Monolith - From monolith to microservices
 
Development.in.Jain.Slee.(May.2009)
Development.in.Jain.Slee.(May.2009)Development.in.Jain.Slee.(May.2009)
Development.in.Jain.Slee.(May.2009)
 
Persistencia de datos en Java
Persistencia de datos en JavaPersistencia de datos en Java
Persistencia de datos en Java
 
Introducción a Spring framework
Introducción a Spring frameworkIntroducción a Spring framework
Introducción a Spring framework
 
Java y xml
Java y xmlJava y xml
Java y xml
 
Experiencias Usando la Tecnología ADF
Experiencias Usando la Tecnología ADF Experiencias Usando la Tecnología ADF
Experiencias Usando la Tecnología ADF
 
Unidad 4: Administración de datos en dispositivos móviles
Unidad 4: Administración de datos en dispositivos móvilesUnidad 4: Administración de datos en dispositivos móviles
Unidad 4: Administración de datos en dispositivos móviles
 
Ado.net
Ado.netAdo.net
Ado.net
 
Para Flor :P
Para Flor :PPara Flor :P
Para Flor :P
 
Caracteristicas de oracle y my sql
Caracteristicas de oracle y my sqlCaracteristicas de oracle y my sql
Caracteristicas de oracle y my sql
 
Arquitectura e-sijad
Arquitectura e-sijadArquitectura e-sijad
Arquitectura e-sijad
 
Administración y programación en sql server
Administración y programación en sql serverAdministración y programación en sql server
Administración y programación en sql server
 
Java persitence api
Java persitence apiJava persitence api
Java persitence api
 
Presentacion mvc orm
Presentacion mvc ormPresentacion mvc orm
Presentacion mvc orm
 
Base de datos
Base de datosBase de datos
Base de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Sesion03 apuntes
Sesion03 apuntesSesion03 apuntes
Sesion03 apuntes
 

Más de Eduardo

Modulo19 Localización
Modulo19 LocalizaciónModulo19 Localización
Modulo19 LocalizaciónEduardo
 
Modulo18 Giroscopo
Modulo18 GiroscopoModulo18 Giroscopo
Modulo18 GiroscopoEduardo
 
Modulo17 Brujula
Modulo17 BrujulaModulo17 Brujula
Modulo17 BrujulaEduardo
 
Modulo14 Notificaciones
Modulo14 NotificacionesModulo14 Notificaciones
Modulo14 NotificacionesEduardo
 
Modulo13 Web Services
Modulo13 Web ServicesModulo13 Web Services
Modulo13 Web ServicesEduardo
 
Modulo12 Network Information
Modulo12 Network InformationModulo12 Network Information
Modulo12 Network InformationEduardo
 
Modulo11 Pim
Modulo11 PimModulo11 Pim
Modulo11 PimEduardo
 
Modulo10 Background Audio
Modulo10 Background AudioModulo10 Background Audio
Modulo10 Background AudioEduardo
 
Modulo9 Background Agents
Modulo9 Background AgentsModulo9 Background Agents
Modulo9 Background AgentsEduardo
 
Modulo8 Servicio De Notificaciones
Modulo8 Servicio De NotificacionesModulo8 Servicio De Notificaciones
Modulo8 Servicio De NotificacionesEduardo
 
Modulo5 Trucos Web Browser
Modulo5 Trucos Web BrowserModulo5 Trucos Web Browser
Modulo5 Trucos Web BrowserEduardo
 
Modulo4 Indicadores De Progreso
Modulo4 Indicadores De ProgresoModulo4 Indicadores De Progreso
Modulo4 Indicadores De ProgresoEduardo
 
Modulo3 Launchers&amp;Choosers
Modulo3 Launchers&amp;ChoosersModulo3 Launchers&amp;Choosers
Modulo3 Launchers&amp;ChoosersEduardo
 
Modulo 2 Modelo Ejecucion
Modulo 2 Modelo EjecucionModulo 2 Modelo Ejecucion
Modulo 2 Modelo EjecucionEduardo
 
Modulo1 Herramientas De Desarrollo Wp7 1
Modulo1 Herramientas De Desarrollo Wp7 1Modulo1 Herramientas De Desarrollo Wp7 1
Modulo1 Herramientas De Desarrollo Wp7 1Eduardo
 

Más de Eduardo (15)

Modulo19 Localización
Modulo19 LocalizaciónModulo19 Localización
Modulo19 Localización
 
Modulo18 Giroscopo
Modulo18 GiroscopoModulo18 Giroscopo
Modulo18 Giroscopo
 
Modulo17 Brujula
Modulo17 BrujulaModulo17 Brujula
Modulo17 Brujula
 
Modulo14 Notificaciones
Modulo14 NotificacionesModulo14 Notificaciones
Modulo14 Notificaciones
 
Modulo13 Web Services
Modulo13 Web ServicesModulo13 Web Services
Modulo13 Web Services
 
Modulo12 Network Information
Modulo12 Network InformationModulo12 Network Information
Modulo12 Network Information
 
Modulo11 Pim
Modulo11 PimModulo11 Pim
Modulo11 Pim
 
Modulo10 Background Audio
Modulo10 Background AudioModulo10 Background Audio
Modulo10 Background Audio
 
Modulo9 Background Agents
Modulo9 Background AgentsModulo9 Background Agents
Modulo9 Background Agents
 
Modulo8 Servicio De Notificaciones
Modulo8 Servicio De NotificacionesModulo8 Servicio De Notificaciones
Modulo8 Servicio De Notificaciones
 
Modulo5 Trucos Web Browser
Modulo5 Trucos Web BrowserModulo5 Trucos Web Browser
Modulo5 Trucos Web Browser
 
Modulo4 Indicadores De Progreso
Modulo4 Indicadores De ProgresoModulo4 Indicadores De Progreso
Modulo4 Indicadores De Progreso
 
Modulo3 Launchers&amp;Choosers
Modulo3 Launchers&amp;ChoosersModulo3 Launchers&amp;Choosers
Modulo3 Launchers&amp;Choosers
 
Modulo 2 Modelo Ejecucion
Modulo 2 Modelo EjecucionModulo 2 Modelo Ejecucion
Modulo 2 Modelo Ejecucion
 
Modulo1 Herramientas De Desarrollo Wp7 1
Modulo1 Herramientas De Desarrollo Wp7 1Modulo1 Herramientas De Desarrollo Wp7 1
Modulo1 Herramientas De Desarrollo Wp7 1
 

Arquitectura de almacenamiento y acceso a datos en Windows Phone

  • 1. 12/09/2011 Arquitectura  WindowsPhone 7.0 Aplicación Almacenamiento aislado IsolatedStorageSettings (System.IO.IsolatedStorage) nombre/valor nombre/valor IsolatedStorageFile ficheros y directorios (System.IO.IsolatedStorage) ficheros y directorios Arquitectura Arquitectura  ¿Qué podemos almacenar en el IsolatedStorage?  Windows Phone Mango  Pares de datos nombre – valor Almacenamiento Aplicación  Parámetros de configuración … aislado IsolatedStorageSettings  Ficheros  Archivos XML, objetos serializados … (System.IO.IsolatedStorage) nombre/valor IsolatedStorageFile  En Windows Phone Mango reaparece el concepto de (System.IO.IsolatedStorage) base de datos ficheros y directorios DataContext (System.Data.Linq) LINQ to SQL base de datos local 1
  • 2. 12/09/2011 Arquitectura LINQ to SQL  El acceso a datos se realiza mediante LINQ to SQL  LINQ es una implementación de Object Relational Mapping  Mapea objetos relacionales en un modelo orientado a objetos Almacenamiento para trabajar con datos Aplicación aislado DataContext LINQ to SQL (System.Data.Linq) base de datos local LINQ to SQL Comparación con la versión de LINQ to SQL escritorio  LINQ permite realizar operaciones con objetos que después se persisten en la base de datos. SQL Server Windows Phone  La aplicación utiliza LINQ para manejar los datos.  LINQ to SQL lo traduce a T-SQL para que se pueda ejecutar Lugar de Servicio en background Proceso de aplicación en la base de datos ejecución Acceso a la Sólo la aplicación que Cualquier aplicación base de datos la utiliza Base Aplicación LINQ to SQL de datos Consultas T-SQL LINQ to SQL 2
  • 3. 12/09/2011 DataContext Cadenas de conexión  LINQ permite realizar operaciones en la base de  Especifica parámetros de configuración de la base de datos a través de un objeto DataContext asociado. datos  El objeto principal es DataContext  Representa la base de datos mediante entidades Parámetro Descripción  LINQ to SQL mapea una base de datos en un modelo de objetos datasource Ruta del archivo de la base de datos local  Base de datos  DataContext  Tabla  clase del DataContext Contraseña de la base de datos.  Columna  propiedad de la clase Password Encripta la base de datos al crearla.  Relación  propiedad de la clase  La estructura de la base de datos se define en el objeto Mode Read Write, Read Only, Exclusive, Share Read DataContext mediante atributos de mapeo Crear la base de datos Utilizar la base de datos  Una vez creado el objeto DataContext y conocida la  Seleccionar datos cadena de conexión… // Define la consulta para obtener todos los elementos ToDo // Crea la base de datos si todavía no existe. var toDoItemsInDB = from ToDoItem todo in toDoDB.ToDoItems using (ToDoDataContext db = new ToDoDataContext("isostore:/ToDo.sdf")) select todo; { if (db.DatabaseExists() == false) // Ejecuta la consulta y añade el resultado a la colección. Indica que el ToDoItems = new ObservableCollection<ToDoItem>(toDoItemsInDB); { archivo de la base // Crea la base de datos. de datos está en el db.CreateDatabase(); almacenamiento } aislado } 3
  • 4. 12/09/2011 Utilizar la base de datos  Insertar datos // Crea un nuevo elemento to-do ToDoItem newToDo = new ToDoItem {ItemName = "nuevo"}; Se añade el nuevo elemento a la // Añade el elemento to-do a la colección. colección DEMO ToDoItems.Add(newToDo); Se inserta el // Añade el elemento to-do a la base de datos local. elemento db.ToDoItems.InsertOnSubmit(newToDo); Hasta que no se realiza la // Guarda los cambios en la base de datos. llamada a SubmitChanges() no se insertan los datos en db.SubmitChanges(); la BD Recursos  Centro de desarrollo de WP7 en MSDN http://msdn.microsoft.com/es-es/windowsphone/default.aspx  AppHub http://create.msdn.com/  Windows Phone Developer Blog http://windowsteamblog.com/windows_phone/b/wpdev  MobileNUG http://www.mobilenug.es  Forums http://forums.create.msdn.com/forums/ 4