SlideShare une entreprise Scribd logo
Techdays2014 mode offline et synchronisation avec windows phone et windows 8.1-v1.0
Mode offline et
Synchronisation avec Windows
Phone et Windows 8.1
Sébastien PERTUS
Technical Evangelist
Microsoft France
spertus@microsoft.com
http://blogs.msdn.com/b/mim/
@sebastienpertus

Guillaume BROUT
Pôle Expertise
Itelios
guillaume.brout@itelios.com
http://www.guillaumebrout.fr
@gbrout

Bases de données/Data management
Donnez votre avis !
Depuis votre smartphone sur :
http://notes.mstechdays.fr
De nombreux lots à gagner toute les heures !!!
Claviers, souris et jeux Microsoft…
Merci de nous aider à améliorer les Techdays !

#mstechdays

Bases de données/ Data management
STOCKAGE DE DONNÉES LOCALES
Rappel Windows Phone 8 et Windows 8.1

#mstechdays

Bases de données/ Data management
Stockage de données locales
Windows.Storage
LocalFolder, TemporaryFolder
et Roamingfolder

#mstechdays

Bases de données/ Data management
Stockage de données locales : exemple
StorageFolder folder =
Windows.Storage.ApplicationData.Current.LocalFolder;
var fileStream = await
folder.OpenStreamForWriteAsync("rssItems.xml",
CreationCollisionOption.ReplaceExisting);

XmlSerializer serializer = new
XmlSerializer(typeof(List<RSSItem>));
serializer.Serialize(fileStream, rss);
#mstechdays

Bases de données/ Data management
STOCKAGE DE DONNÉES LOCALES
DailyFeed Windows Phone 8 et Windows 8.1

#mstechdays

Bases de données/ Data management
SQLITE
SQLite pour Windows Phone 8 et Windows 8.1

#mstechdays

Bases de données/ Data management
SQLite
Présentation
Bibliothèque écrite en C offrant un moteur de base de données
accessible en langage SQL sans aucune configuration.

Installation
Téléchargement depuis le site http://www.sqlite.org/ ou depuis
Extensions and Updates de Visual Studio.

Configuration
Référence à SQLite et au Runtime C++.
Mode de compilation x86, x64 ou ARM.
#mstechdays

Bases de données/ Data management
Les Frameworks SQLite
SQLite-net

Fournit deux classes d’accès à SQLite : SQLite.cs et
SQLiteAsync.cs. Utilisation similaire à Linq to Object.
Attention : Pour WP8, ajouter un wrapper C++/CX au projet
(sqlite.dll) et la directive USE_WP8_NATIVE_SQLITE.

SQLite-winrt
Wrapper SQLite sous la forme d’un composant à ajouter au projet
et offrant un approche similaire à ADO.NET (instructions SQL).

#mstechdays

Bases de données/ Data management
SQLite-net : exemple
var db = new SQLite.SQLiteAsyncConnection(DbPath);
var _customer = await (from c in db.Table<Customer>()
where c.Id == customerId
select c).FirstOrDefaultAsync();
if (customer != null) {
var Id = _customer.Id;
var Name = _customer.Name;
}

#mstechdays

Bases de données/ Data management
SQLite-winrt : exemple
using (var db = new SQLiteWinRTPhone.Database(
ApplicationData.Current.LocalFolder, "demo.db"))
{
await db.OpenAsync();
using (var stmt = await db.PrepareStatementAsync("SELECT name
FROM people"))
{
while (await stmt.StepAsync())
{
var name = stmt.GetTextAt(0);
}
}
}
#mstechdays

Bases de données/ Data management
SQLITE-NET ET SQLITE-WINRT
Windows 8.1

#mstechdays

Bases de données/ Data management
SYNCHRONISATION DE DONNÉES
Sync Framework

#mstechdays

Bases de données/ Data management
Synchronisation de données
Sync Framework 2.1

Permet de synchroniser n'importe quelle source de données
d'un serveur à une application de bureau qui exécute SQL
Server, SQL Server CE, SQL Server Express.

#mstechdays

Bases de données/ Data management
Synchronisation de données
Sync Framework Toolkit

Etend les fonctionnalités à Silverlight, Windows Phone 7, et
Windows Mobile, mais aussi iPhone, Android, Blackberry....

Protocole et format de données

Sync Framework Toolkit utilise le protocole OData et les
formats JSON ou ATOM.

#mstechdays

Bases de données/ Data management
Synchronisation de données
Sync Framework Toolkit for WinRT

Il existe également une implémentation de ce toolkit pour les clients
WinRT et Windows Phone 8 (https://syncwinrt.codeplex.com/) et
basé sur l'utilisation de SQLite.

#mstechdays

Bases de données/ Data management
SYNCHRONISATION DE DONNÉES
Conception d’une application synchronisée avec le
Sync Framework
#mstechdays

Bases de données/ Data management
MERCI DE VOTRE ATTENTION
Retrouvez nous
STAND

47

https://www.facebook.com/Itelios
http://twitter.com/itelios
contact@itelios.com
http://www.itelios.com
#mstechdays

Bases de données/ Data management
Digital is business

Contenu connexe

En vedette

Assessment of river_plan_change_using_rs_and_gis_technique
Assessment of river_plan_change_using_rs_and_gis_techniqueAssessment of river_plan_change_using_rs_and_gis_technique
Assessment of river_plan_change_using_rs_and_gis_technique
syafruddin rauf
 
Slide for site
Slide for siteSlide for site
Slide for site
neomib40
 
Colorpresentation2
Colorpresentation2Colorpresentation2
Colorpresentation2
ml26441
 
Corporate success strategies
Corporate success strategiesCorporate success strategies
Corporate success strategies
Paul Bennett Bishop-
 
Capability
CapabilityCapability
Value chain presentation
Value chain presentationValue chain presentation
Value chain presentation
Paul Bennett Bishop-
 
Local development planning 2
Local development planning 2Local development planning 2
Local development planning 2
Mulimba Yasini
 
Barnum Design Presentation
Barnum Design PresentationBarnum Design Presentation
Barnum Design Presentation
barnumdesign
 
Talk
TalkTalk
AppSync.org: open-source patterns and code for data synchronization in mobile...
AppSync.org: open-source patterns and code for data synchronization in mobile...AppSync.org: open-source patterns and code for data synchronization in mobile...
AppSync.org: open-source patterns and code for data synchronization in mobile...
Niko Nelissen
 
Windows phone 7 sync application sur Azure, création d'application offline re...
Windows phone 7 sync application sur Azure, création d'application offline re...Windows phone 7 sync application sur Azure, création d'application offline re...
Windows phone 7 sync application sur Azure, création d'application offline re...
Microsoft Décideurs IT
 

En vedette (11)

Assessment of river_plan_change_using_rs_and_gis_technique
Assessment of river_plan_change_using_rs_and_gis_techniqueAssessment of river_plan_change_using_rs_and_gis_technique
Assessment of river_plan_change_using_rs_and_gis_technique
 
Slide for site
Slide for siteSlide for site
Slide for site
 
Colorpresentation2
Colorpresentation2Colorpresentation2
Colorpresentation2
 
Corporate success strategies
Corporate success strategiesCorporate success strategies
Corporate success strategies
 
Capability
CapabilityCapability
Capability
 
Value chain presentation
Value chain presentationValue chain presentation
Value chain presentation
 
Local development planning 2
Local development planning 2Local development planning 2
Local development planning 2
 
Barnum Design Presentation
Barnum Design PresentationBarnum Design Presentation
Barnum Design Presentation
 
Talk
TalkTalk
Talk
 
AppSync.org: open-source patterns and code for data synchronization in mobile...
AppSync.org: open-source patterns and code for data synchronization in mobile...AppSync.org: open-source patterns and code for data synchronization in mobile...
AppSync.org: open-source patterns and code for data synchronization in mobile...
 
Windows phone 7 sync application sur Azure, création d'application offline re...
Windows phone 7 sync application sur Azure, création d'application offline re...Windows phone 7 sync application sur Azure, création d'application offline re...
Windows phone 7 sync application sur Azure, création d'application offline re...
 

Similaire à Techdays2014 mode offline et synchronisation avec windows phone et windows 8.1-v1.0

HTML5 en projet
HTML5 en projetHTML5 en projet
HTML5 en projet
Normandy JUG
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
Bruno Bonnin
 
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
Microsoft Ideas
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 Performant
Hugo Hamon
 
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les NotebooksSQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
Philippe Geiger
 
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Bruno Bonnin
 
La mobilité dans Drupal
La mobilité dans DrupalLa mobilité dans Drupal
La mobilité dans Drupal
Adyax
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
davrous
 
OWF12/HTML 5 local storage , olivier thomas, cto at webtyss
OWF12/HTML 5 local storage , olivier thomas, cto at webtyssOWF12/HTML 5 local storage , olivier thomas, cto at webtyss
OWF12/HTML 5 local storage , olivier thomas, cto at webtyss
Paris Open Source Summit
 
Big Data et Business Intelligence de A… Azure
Big Data et Business Intelligence de A… AzureBig Data et Business Intelligence de A… Azure
Big Data et Business Intelligence de A… Azure
Microsoft Décideurs IT
 
Déploiment des tablettes et gestion du parc informatique dans les établisseme...
Déploiment des tablettes et gestion du parc informatique dans les établisseme...Déploiment des tablettes et gestion du parc informatique dans les établisseme...
Déploiment des tablettes et gestion du parc informatique dans les établisseme...
Microsoft Ideas
 
Nouveautés html5 et css3 dans internet explorer 10
Nouveautés html5 et css3 dans internet explorer 10Nouveautés html5 et css3 dans internet explorer 10
Nouveautés html5 et css3 dans internet explorer 10
davrous
 
Découverte du moteur de rendu du projet Spartan
Découverte du moteur de rendu du projet SpartanDécouverte du moteur de rendu du projet Spartan
Découverte du moteur de rendu du projet Spartan
Microsoft
 
Big Data et Business Intelligence de A… Azure
Big Data et Business Intelligence de A… AzureBig Data et Business Intelligence de A… Azure
Big Data et Business Intelligence de A… Azure
Microsoft Technet France
 
ASP.NET MVC, Web API & KnockoutJS
ASP.NET MVC, Web API & KnockoutJSASP.NET MVC, Web API & KnockoutJS
ASP.NET MVC, Web API & KnockoutJS
Renaud Dumont
 
2009-02-11 COL318 - Quoi de neuf dans l'administration SharePoint
2009-02-11 COL318 - Quoi de neuf dans l'administration SharePoint 2009-02-11 COL318 - Quoi de neuf dans l'administration SharePoint
2009-02-11 COL318 - Quoi de neuf dans l'administration SharePoint
Patrick Guimonet
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
Bruno Bonnin
 
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Swiss Data Forum Swiss Data Forum
 
Deep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL ServerDeep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL Server
Microsoft
 

Similaire à Techdays2014 mode offline et synchronisation avec windows phone et windows 8.1-v1.0 (20)

iTunes Stats
iTunes StatsiTunes Stats
iTunes Stats
 
HTML5 en projet
HTML5 en projetHTML5 en projet
HTML5 en projet
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
 
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 Performant
 
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les NotebooksSQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
 
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
 
La mobilité dans Drupal
La mobilité dans DrupalLa mobilité dans Drupal
La mobilité dans Drupal
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
 
OWF12/HTML 5 local storage , olivier thomas, cto at webtyss
OWF12/HTML 5 local storage , olivier thomas, cto at webtyssOWF12/HTML 5 local storage , olivier thomas, cto at webtyss
OWF12/HTML 5 local storage , olivier thomas, cto at webtyss
 
Big Data et Business Intelligence de A… Azure
Big Data et Business Intelligence de A… AzureBig Data et Business Intelligence de A… Azure
Big Data et Business Intelligence de A… Azure
 
Déploiment des tablettes et gestion du parc informatique dans les établisseme...
Déploiment des tablettes et gestion du parc informatique dans les établisseme...Déploiment des tablettes et gestion du parc informatique dans les établisseme...
Déploiment des tablettes et gestion du parc informatique dans les établisseme...
 
Nouveautés html5 et css3 dans internet explorer 10
Nouveautés html5 et css3 dans internet explorer 10Nouveautés html5 et css3 dans internet explorer 10
Nouveautés html5 et css3 dans internet explorer 10
 
Découverte du moteur de rendu du projet Spartan
Découverte du moteur de rendu du projet SpartanDécouverte du moteur de rendu du projet Spartan
Découverte du moteur de rendu du projet Spartan
 
Big Data et Business Intelligence de A… Azure
Big Data et Business Intelligence de A… AzureBig Data et Business Intelligence de A… Azure
Big Data et Business Intelligence de A… Azure
 
ASP.NET MVC, Web API & KnockoutJS
ASP.NET MVC, Web API & KnockoutJSASP.NET MVC, Web API & KnockoutJS
ASP.NET MVC, Web API & KnockoutJS
 
2009-02-11 COL318 - Quoi de neuf dans l'administration SharePoint
2009-02-11 COL318 - Quoi de neuf dans l'administration SharePoint 2009-02-11 COL318 - Quoi de neuf dans l'administration SharePoint
2009-02-11 COL318 - Quoi de neuf dans l'administration SharePoint
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
 
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
 
Deep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL ServerDeep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL Server
 

Techdays2014 mode offline et synchronisation avec windows phone et windows 8.1-v1.0

  • 2. Mode offline et Synchronisation avec Windows Phone et Windows 8.1 Sébastien PERTUS Technical Evangelist Microsoft France spertus@microsoft.com http://blogs.msdn.com/b/mim/ @sebastienpertus Guillaume BROUT Pôle Expertise Itelios guillaume.brout@itelios.com http://www.guillaumebrout.fr @gbrout Bases de données/Data management
  • 3. Donnez votre avis ! Depuis votre smartphone sur : http://notes.mstechdays.fr De nombreux lots à gagner toute les heures !!! Claviers, souris et jeux Microsoft… Merci de nous aider à améliorer les Techdays ! #mstechdays Bases de données/ Data management
  • 4. STOCKAGE DE DONNÉES LOCALES Rappel Windows Phone 8 et Windows 8.1 #mstechdays Bases de données/ Data management
  • 5. Stockage de données locales Windows.Storage LocalFolder, TemporaryFolder et Roamingfolder #mstechdays Bases de données/ Data management
  • 6. Stockage de données locales : exemple StorageFolder folder = Windows.Storage.ApplicationData.Current.LocalFolder; var fileStream = await folder.OpenStreamForWriteAsync("rssItems.xml", CreationCollisionOption.ReplaceExisting); XmlSerializer serializer = new XmlSerializer(typeof(List<RSSItem>)); serializer.Serialize(fileStream, rss); #mstechdays Bases de données/ Data management
  • 7. STOCKAGE DE DONNÉES LOCALES DailyFeed Windows Phone 8 et Windows 8.1 #mstechdays Bases de données/ Data management
  • 8. SQLITE SQLite pour Windows Phone 8 et Windows 8.1 #mstechdays Bases de données/ Data management
  • 9. SQLite Présentation Bibliothèque écrite en C offrant un moteur de base de données accessible en langage SQL sans aucune configuration. Installation Téléchargement depuis le site http://www.sqlite.org/ ou depuis Extensions and Updates de Visual Studio. Configuration Référence à SQLite et au Runtime C++. Mode de compilation x86, x64 ou ARM. #mstechdays Bases de données/ Data management
  • 10. Les Frameworks SQLite SQLite-net Fournit deux classes d’accès à SQLite : SQLite.cs et SQLiteAsync.cs. Utilisation similaire à Linq to Object. Attention : Pour WP8, ajouter un wrapper C++/CX au projet (sqlite.dll) et la directive USE_WP8_NATIVE_SQLITE. SQLite-winrt Wrapper SQLite sous la forme d’un composant à ajouter au projet et offrant un approche similaire à ADO.NET (instructions SQL). #mstechdays Bases de données/ Data management
  • 11. SQLite-net : exemple var db = new SQLite.SQLiteAsyncConnection(DbPath); var _customer = await (from c in db.Table<Customer>() where c.Id == customerId select c).FirstOrDefaultAsync(); if (customer != null) { var Id = _customer.Id; var Name = _customer.Name; } #mstechdays Bases de données/ Data management
  • 12. SQLite-winrt : exemple using (var db = new SQLiteWinRTPhone.Database( ApplicationData.Current.LocalFolder, "demo.db")) { await db.OpenAsync(); using (var stmt = await db.PrepareStatementAsync("SELECT name FROM people")) { while (await stmt.StepAsync()) { var name = stmt.GetTextAt(0); } } } #mstechdays Bases de données/ Data management
  • 13. SQLITE-NET ET SQLITE-WINRT Windows 8.1 #mstechdays Bases de données/ Data management
  • 14. SYNCHRONISATION DE DONNÉES Sync Framework #mstechdays Bases de données/ Data management
  • 15. Synchronisation de données Sync Framework 2.1 Permet de synchroniser n'importe quelle source de données d'un serveur à une application de bureau qui exécute SQL Server, SQL Server CE, SQL Server Express. #mstechdays Bases de données/ Data management
  • 16. Synchronisation de données Sync Framework Toolkit Etend les fonctionnalités à Silverlight, Windows Phone 7, et Windows Mobile, mais aussi iPhone, Android, Blackberry.... Protocole et format de données Sync Framework Toolkit utilise le protocole OData et les formats JSON ou ATOM. #mstechdays Bases de données/ Data management
  • 17. Synchronisation de données Sync Framework Toolkit for WinRT Il existe également une implémentation de ce toolkit pour les clients WinRT et Windows Phone 8 (https://syncwinrt.codeplex.com/) et basé sur l'utilisation de SQLite. #mstechdays Bases de données/ Data management
  • 18. SYNCHRONISATION DE DONNÉES Conception d’une application synchronisée avec le Sync Framework #mstechdays Bases de données/ Data management
  • 19. MERCI DE VOTRE ATTENTION Retrouvez nous STAND 47 https://www.facebook.com/Itelios http://twitter.com/itelios contact@itelios.com http://www.itelios.com #mstechdays Bases de données/ Data management