Upload
caleb-kim
View
30
Download
0
Embed Size (px)
DESCRIPTION
RIA Services de A à Z. Audrey PETIT MCNEXT [email protected] MVP Client App Dev. Nicolas CLERC CEO/CTO QuidMind [email protected] Microsoft Regional Director. MCNEXTStand D7. - PowerPoint PPT Presentation
Citation preview
2
RIA Services de A à ZNicolas CLERC
CEO/CTO QuidMind [email protected]
Microsoft Regional Director
Audrey PETITMCNEXT
[email protected] Client App Dev
3
MCNEXT Stand D7Filiale du groupe MOZZAIK, MCNEXT est une société de conseil et services informatiques dédiée aux technologies MICROSOFT. Savoir-faire autour de 4 pôles, tous pilotéspar des experts reconnus
100 collaborateursPrésent à Paris et Genève
Accompagnement global de nos clients :Conseil fonctionnelArchitecture techniqueAccompagnement méthodologiqueGraphisme/ergonomie (Web Agency)Réalisation (forfait/régie)TMAFormation
.NetBizTalkBISharePoint
4
Nicolas CLERC [email protected]
Architecte logiciel et expert technique reconnu par Microsoft, les Microsoft Regional Director ont pour rôle de vous accompagner à
la mise en œuvre des technologies et outils Microsoft, dans le cadre de migrations applicatives, de démarrages de projets ou de
prototypages, aussi bien au niveau stratégique et décisionnaire qu’au sein de vos équipes de production.
Regional Director depuis 10ans et créateur de la société d’expertise logicielle QuidMind, Nicolas CLERC est formateur
officiel au sein du programme Microsoft Metro (Windows Azure, Silverlight,
Unified Communication, …).
www.quidmind.com www.theregion.com
Azure
Windows Phone 7
WPFSensor & MultiTouch
Innovation
R & DSilverlight
RIA ServicesWCF
AppFabric
Architecture
CoachingAccompagnement
stratégiqueVSTO
SOA & architecture distribuéeVeille technologique
Confidentialité Sécurité
5
Agenda• Entity Framework 4• Domain Service• Domain Context• Data Validation• Les Outils de développements• Migration vers le Cloud
6
Contoso Sales
7
Architecture ContosoSales
SQL
8
Entity Framework 4• Framework de Mapping Objet Relationnel
• Une base un modèle EDMX• Une table une classe (Entity)• Une colonne une propriété• Une procédure stockée une méthode
• Différents modes de conception• Generated Model : génération du modèle
EDMX à partir de la base de données• Model First : génération de la base de
données à partir du modèle EDMX• Code first : création des entités par codage
9
Architecture ContosoSales
SQLModele EDMX
Entity Framework
10
DémoGénération du modèle ContosoModel
11
Domain Service
• Fichier côté serveur• Généré à partir de la liaison avec l’edmx• Contient toutes les méthodes CRUD générées
automatiquement liées aux entités de l’edmx• Génération des metadatas (en option)
12
Architecture ContosoSales
SQLModele EDMX
.Net 3.5 / 4
Domain Service
RIA ServicesEntity
Framework
13
DémoGénération du Domain Service
14
Domain Context• Fichier côté client• Généré lors de la compilation du Domain Service• Dossier Generated_Code• Permet d’accéder aux méthodes du Domain
Service
15
Domain Context : Linq2DC• Utilisation de Linq pour affiner ses recherches• Linq interroge le Domain Context
• Exemple :
from d in myContext.StoreContactswhere d.StoreID == ((Store)listStore.SelectedItem).StoreIDselect d;
16
CRUD• Côté serveur : Génération des méthodes par le Domain
Service
public IQueryable<Store> GetStore(){ return this.ObjectContext.Store;}
• Côté client : Appel de ses méthodes via le Domain Context
myContext.Load(myContext.GetStoreQuery());
17
Architecture ContosoSales
SQLModele EDMX
Domain Service
Domain Context
.Net 3.5 / 4Silverlight 3 / 4
Code généré
RIA ServicesEntity
Framework
18
DémoUtilisation du Domain Context et de Linq2DC avec une application Maître / Détails
19
Sécurité• Authentification
• [RequiresAuthentication] • [RequiresRole("Administrator")]
• HTTPS• [EnableClientAccess(RequiresSecureEndpoint =
true)]
20
Data Validation• RIA Services est architecturé autour d’un modèle de
données• Application orientée saisie et manipulation de
données Les données saisies doivent être vérifiées et validées
• Lors de la saisie • ergonomie, • correction
• Dans le DomainService• sécurité, • Intégrité,• ouverture
• Intérêt à capitaliser et réutiliser le code et les directives de validation de données
21
Data Validation• Solution proposée RIA Services
• Définition des règles de validation par l’intermédiaire de meta-donnée (Attribut .Net)• Validation Attribut : [Length], [Size], …
• Partage du code source entre le DomainService et le DomainContext lors de la compilation• Shared code (.shared.cs )
• Contrôles de saisie intégrés avec la validation de données• TextBox, DataForm, …
• Extensible• Création et partage d’objet métier, d’attributs
de validation personnalisés, …
22
Architecture ContosoSales
SQLModele EDMX
Domain Service
Domain ContextApplication
Silverlight
Data Validation,code partagé
.Net 3.5 / 4Silverlight 3 / 4
Code généré
RIA ServicesEntity
Framework
Validation
23
DémoValidation de donnéesCode Partagé
24
Outils de développement• Template de projet incluant WCF RIA Services :
• Silverlight Business Application
• WCF RIA Services embarqué dans des outils• Visual Studio LightSwitch (beta 1)
25
DémoSilverlight Business ApplicationVisual Studio LightSwitch
26
Migration vers le Cloud• Azure est la plateforme de « cloud computing »
Microsoft• Basé sur Windows 2008 R2 64bit, Hyper-V,• Framework .NET , WCF, …• SQL Serveur 2008, …
Packaged Software
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
Votre
resp
onsa
bilit
é
Infrastructure(as a Service)
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
RuntimeGéré par le fournisseur
Votre
resp
onsa
bilit
é
Platform(as a Service)
Géré par le fournisseur
Votre
re
spon
sabi
lité
Storage
Servers
Networking
O/S
Middleware
Virtualization
Applications
Runtime
Data
Software(as a Service)
Géré par le fournisseur
Storage
Servers
Networking
O/S
Middleware
Virtualization
Applications
Runtime
Data
27
Localisation des datacenters
Amérique du Nord Europe Asie - Pacifique
S. Central – U.S.
W. Europe N. Central – U.S.
N. Europe
S.E. Asia
E. Asia
28
• Basé sur le cœur SQL Server 2008 R2 mais avec quelques différences : administration logique vs. administration physique
• Non supporté :• Common Language Runtime (CLR)• Database file placement• Database mirroring• Distributed queries• Distributed transactions• Filegroup management• Global temporary tables• SQL Server configuration options• SQL Server Service Broker• System tables• Trace Flags
http://msdn.microsoft.com/en-us/library/ee336250.aspxhttp://msdn.microsoft.com/en-us/library/ee336281.aspx
29
Migration vers SQL Azure• Fonctionnalité DDL limité
• Le script SQL de création de base n’est pas portable directement, il faut l’épurer
• SSIS et DataMigration Wizard non fonctionnel avec SQL Azure• Absence de certain procédure stockée dans SQL
Azure• Solutions :
• Script SQL, outils spécifiques de migration• http://sqlazuremw.codeplex.com/ migration
bidirectionnelle
30
DémoMigration de la base vers SQL Azure
31
• Plateforme d’hébergement d’application• Configuration des hébergements par « Rôle »• API spécifique pour une intégration fine• Déploiement via un portail spécifique (Silverlight)• SDK Windows Azure nécessaire
32
Migration vers Windows Azure• Mettre à jour la chaine de connexion du model EDMX• Si utilisation de l’authentification ASP.Net
• Migrer la base ASPNET_db vers SQL Azure• http://support.microsoft.com/kb/2006191/en-us
• Modifier le web.config pour que votre authentification utilise la nouvelle chaine de connexion (et donc la base SQLAzure)
• Windows Azure ne contient pas les assemblies RIA Services• Modifier les références *.DomainServices.*
• CopyLocal=True
33
Migration vers Windows Azure• Ajouter un projet de type « Cloud\Windows Azure Project »
dans votre solution• Ajouter un « Web Rôle Project in Solution »
• Sélectionner le projet Web• Si EnableDiagnostic est coché dans les propriétés du
Role, modifier la chaine configuration pour pointer vers un stockage Azure.
• Ajouter un RoleEntryPoint dans votre application• Référéncer « Microsoft.WindowsAzure.ServiceRuntime »• Nouvelle classe WebRole : RoleEntryPoint• Surcharger OnStart()
• Déployer votre application
34
DémoHosting de l’application dans Azure
35
Résumé• Entity Framework 4
• Mapping objet/relationnel, SQL Server, extensible
• Domain Service• Domain Context• Data Validation
• Attribut, Client et Serveur, extensible• Les Outils de développements
• Visual Studio, LightSwitch• Migration vers le Cloud
• Windows Azure, SQL Azure
47
MSDN et TechNet : l’essentiel des ressources techniques à portée de clic
http://technet.com http://msdn.com
Portail administration et infrastructure pour informaticiens
Portail de ressources technique pour développeurs