WCF RIA SERVICE - Evento 1nn0va 2010

1,026 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,026
On SlideShare
0
From Embeds
0
Number of Embeds
109
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

WCF RIA SERVICE - Evento 1nn0va 2010

  1. 1. www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931 WCF RIA Services: Semplificazione sviluppo n-tier application Marco Pozzan Software Developer , CGN Corporation Blog: http://www.marcopozzan.it
  2. 2. Agenda: <ul><li>Perchè WCF RIA? </li></ul><ul><li>Nozioni di Base </li></ul><ul><li>Come usare Silverlight 4.0 con i WCF Ria Services </li></ul><ul><li>OOB </li></ul><ul><li>Pattern MVVM </li></ul>www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  3. 3. WCF RIA Services: 1/2 <ul><li>Operazioni CRUD da Silverlight </li></ul><ul><li>Semplificano lo sviluppo di applicazioni n-tier </li></ul><ul><li>Specializzazione di WCF </li></ul><ul><ul><li>Semplifica iterazione tra mid e Presentation Layer </li></ul></ul><ul><li>Validazione lato clinet e server </li></ul>www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  4. 4. WCF RIA Services: 2/2 <ul><li>Serializzazione automatica ed efficiente </li></ul>www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  5. 5. I Domain Services? www.1nn0va.net [email_address] <ul><li>sono servizi che incapsulano la logica di business di una applicazione . </li></ul><ul><li>espongono un insieme di operazioni correlate sotto forma di una strato di servizi ( Coesion ) </li></ul><ul><li>Durante l'instanziazione si specificano le operazioni sui dati che sono consentite. </li></ul>Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  6. 6. La classe Domain Services e amici www.1nn0va.net [email_address] <ul><li>la classe base per tutte le classi che fungono da Domain Services è </li></ul><ul><li>DomainServices </li></ul><ul><li>LinqToEntitiesDomainService <TContext> è una classe astratta che deriva da DomainService per ado.net </li></ul><ul><li>[EnableClientAccess()] </li></ul><ul><li>public class OrderDomainService :LinqToEntitiesDomainService<AdventureWorksLT_DataEntities> </li></ul><ul><li>I LinqToSqlDomainService <TContext> (per LINQ to SQL) </li></ul><ul><ul><li>[EnableClientAccess()] </li></ul></ul><ul><ul><li>public class OrderDomainService : LinqToEntitiesDomainService<AdventureWorksLT_DataEntities> </li></ul></ul>Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  7. 7. Operazioni sui dati www.1nn0va.net [email_address] <ul><li>E possibile aggiungere Metodi che esguono operazioni semplici o complesse: </li></ul><ul><ul><li>CRUD </li></ul></ul><ul><ul><li>Invoke : operazioni devono essere eseguite senza Monitoraggio o con esecuzione differita. </li></ul></ul><ul><ul><li>Named Update : operazioni customizzate che non rientrano nelle operazioni semplici di modifica </li></ul></ul>Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  8. 8. Class Domain Context? www.1nn0va.net [email_address] <ul><li>No direct interaction del client con Domain Services. </li></ul><ul><li>nel client viene generato un DomainContext per ogni Domain Services del server. </li></ul><ul><li>chiamata a un metodo della classe Domaincontext = chiamata un metodo Domain Service </li></ul>Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  9. 9. Class Domain Context? www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  10. 10. Classi DomainContext www.1nn0va.net [email_address] <ul><li>DomainContext supporta </li></ul><ul><ul><li>Query (classe LoadOperation ) </li></ul></ul><ul><ul><li>Submit (classe SubmitOperation ) </li></ul></ul><ul><ul><li>Invoke (classe InvokeOperation ) </li></ul></ul>Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  11. 11. Perchè WCF con RIA Services? www.1nn0va.net [email_address] <ul><li>I Servizi RIA, espongono i dati dal progetto server al progetto client attraverso i servizi di dominio. </li></ul><ul><li>Ogni servizio di dominio è implementato come un WCF Services </li></ul><ul><li>è possibile applicare i concetti da WCF Services ai domain service </li></ul>Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  12. 12. RIA Services Link www.1nn0va.net [email_address] <ul><li>Collega un progetto Silverlight al suo progetto Middle t-layer. Facilita la generazione di codice della presentation da codice Middle t-layer </li></ul><ul><ul><li>Il collegamento è definito in un progetto client Silverlight. </li></ul></ul><ul><ul><li>Il link punta sempre da un progetto di client Silverlight, progetto server. NET o libreria classi. </li></ul></ul><ul><ul><li>Ci può essere un solo collegamento per ogni progetto client Silverlight.Il collegamento non può </li></ul></ul><ul><ul><li>puntare a progetti di altri client Silverlight. </li></ul></ul><ul><ul><li>Più progetti client Silverlight possono puntare allo stesso progetto server o libreria di classi. </li></ul></ul><ul><ul><li>Un'applicazione Silverlight non può essere collegata direttamente a un progetto libreria di classi. </li></ul></ul>Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  13. 13. Cosa Usero?: <ul><li>Visual Studio 2010 </li></ul><ul><li>Silverlight 4.0 </li></ul><ul><li>WCF Ria Services Disponibile all'indirizzo: </li></ul><ul><li>http://www.silverlight.net/getstarted/riaservices/ </li></ul>www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  14. 14. Demo: <ul><li>Parte 1 - Costruiamo una applicazione </li></ul><ul><li>http://cid-913fef309e107dcd.office.live.com/self.aspx/.Public/RiaServices.zip </li></ul>www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  15. 15. Demo: <ul><li>Parte 2 – OOB </li></ul><ul><li>http://cid-913fef309e107dcd.office.live.com/self.aspx/.Public/Silverlight4%20Out%20of%20Browser.zip </li></ul>www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  16. 16. Perché MVVM <ul><li>Pattern Separation </li></ul><ul><li>Data Binding (XAML) </li></ul><ul><li>Unit testing </li></ul><ul><li>Simbiosi tra sviluppatore e designer </li></ul><ul><li>Manutenibilità </li></ul><ul><li>Scalabilità </li></ul>www.1nn0va.net [email_address] Relatore: Nome e Cognome relatore Mail relatore: info@relatore.com
  17. 17. MVVM 1/4 www.1nn0va.net [email_address] Relatore: Nome e Cognome relatore Mail relatore: info@relatore.com UI Model
  18. 18. MVVM 1/4 www.1nn0va.net [email_address] UI Model CodeBehind Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  19. 19. MVVM 2/4 <ul><li>Proprietà </li></ul><ul><li>Domain Object </li></ul><ul><li>Entità Ria Services </li></ul>www.1nn0va.net [email_address] View + Metodo Save Model Model View Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931 <ul><li>Pagina o controllo </li></ul><ul><li>UI </li></ul><ul><li>Interazioni (Binding, Eventi) </li></ul><ul><li>Temi e stili </li></ul><ul><li>Databound della view </li></ul><ul><li>Collante tra V e M </li></ul><ul><li>Contiene il modello </li></ul><ul><li>Proprietà </li></ul><ul><li>Domain Object </li></ul><ul><li>Entità Ria Services </li></ul><ul><li>Databound della view </li></ul><ul><li>Collante tra V e M </li></ul><ul><li>Contiene il modello </li></ul><ul><li>Pagina o controllo </li></ul><ul><li>UI </li></ul><ul><li>Interazioni (Binding, Eventi) </li></ul><ul><li>Temi e stili </li></ul><ul><li>Proprietà </li></ul><ul><li>Domain Object </li></ul><ul><li>Entità Ria Services </li></ul><ul><li>Databound della view </li></ul><ul><li>Collante tra V e M </li></ul><ul><li>Contiene il modello </li></ul>
  20. 20. MVVM 3/4 www.1nn0va.net [email_address] View + Metodo Save Model Model View Command Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931 <ul><li>Pagina o controllo </li></ul><ul><li>UI </li></ul><ul><li>Interazioni (Binding, Eventi) </li></ul><ul><li>Temi e stili </li></ul><ul><li>Proprietà </li></ul><ul><li>Domain Object </li></ul><ul><li>Entità Ria Services </li></ul><ul><li>Databound della view </li></ul><ul><li>Collante tra V e M </li></ul><ul><li>Contiene il modello </li></ul>
  21. 21. MVVM 4/4 www.1nn0va.net [email_address] View + Metodo Save Model Model View DataBinding Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931 <ul><li>Pagina o controllo </li></ul><ul><li>UI </li></ul><ul><li>Interazioni (Binding, Eventi) </li></ul><ul><li>Temi e stili </li></ul><ul><li>Proprietà </li></ul><ul><li>Domain Object </li></ul><ul><li>Entità Ria Services </li></ul><ul><li>Databound della view </li></ul><ul><li>Collante tra V e M </li></ul><ul><li>Contiene il modello </li></ul>
  22. 22. Demo: <ul><li>Parte 3 - Costruiamo una applicazione con il pattern MVVM </li></ul>www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  23. 23. Last Minute: Dicembre 2010 <ul><li>1. LinqToSql DomainService </li></ul><ul><li>2. Soap endpoint for DomainServices </li></ul><ul><li>3. JSON endpoint for DomainServices </li></ul><ul><li>4. ASP.net DomainDataSource </li></ul><ul><li>5. WCF client proxy auto generation/updating for </li></ul><ul><li>WCF Core Service (usano MEF) </li></ul><ul><li>6. Domain Service support Windows Azure </li></ul><ul><li>7. T4 template based client code generation. (Fixbug) </li></ul><ul><li>8. CollectionView to enable MVVM Patterns </li></ul>www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  24. 24. Questions and Answers: www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931
  25. 25. CONTATTI: Marco Pozzan [email_address] www.marcopozzan.it www.1nn0va.net [email_address] Sede Legale: Via Monte Coglians, 8 – PORCIA – (PN) Codice fiscale: 91068510931

×