SlideShare una empresa de Scribd logo
1 de 14
Building Applications with WCF 
          RIA Services 
 Stephen Forte
 Chief Strategy Officer, Telerik
 www.telerik.com
 Stevef.hk@gmail.com
 S     f hk@     il
 Blog: Stephenforte.net
Speaker.Bio()
• Chief Strategy Officer of Telerik
• Certified Scrum Master
  Certified Scrum Master
• Active in the Community:
   – International Conference Speaker for 13+ Years
     International Conference Speaker for 13+ Years
   – RD, MVP and INETA Speaker 
   – Co‐moderator & founder of NYC .NET 
     Developers Group   http://www.nycdotnetdev.com
     D l        G       htt //          d t td
   – Wrote a few books: SQL Server 2008 Developers Guide 
     (MS Press)
• MBA from the City University of New York
• Past:
   – CTO and co‐Founder of Corzen, Inc. (TXV: WAN)
   – CTO of Zagat Survey 
N Tier Programming
N‐Tier Programming
RIA Services in n‐tier applications
                                       Trust
                                     Boundaryy
  Web
  W b
 Service

                    Data
                  Access      App                 App
                   Layer                                 View
                             Logic               Logic
                   (DAL)

Database




 Framework, tools and services with
 prescriptive pattern for n tier applications
 prescriptive pattern for n‐tier applications
Windows Communication Foundation (WCF)
Using the right tool for the job
         Using the right tool for the job
     WCF Layer              Description

     RIA Services
     RIA Services           Prescriptive E2E experience for Silverlight
                                         E2E experience for Silverlight 
                            applications
     Data Services          Turn‐key entity‐oriented programming 
                            model for HTTP/RESTful services
     Workflow Services      Workflow‐oriented programming model for 
                            long‐running business processes
                            long‐running business processes
     Service Model          Method‐oriented programming model for 
                            WS‐* & REST developers
1.    All programming models can leverage the wide‐ranging set of behaviors and 
      protocols
2.
2     We have good integration in SL4/Dev10, that gets even better in Dev11
      We have good integration in SL4/Dev10 that gets even better in Dev11

                                   Microsoft Confidential
RIA Services Design principles
    RIA Services Design principles
• End‐to‐end view of an application: framework, 
  pattern, tooling and services
              l      d
• Prescriptive approach to app logic 
• DAL‐neutral and targets multiple presentation 
  technologies
Data access & presentation neutral
Data access & presentation neutral



                 App
                Logic



      XML, 
      JSON, 
      Binary
Design‐time view


                          Solution (Application)

     Server project                                  Client project

Entities                                      Entities
                          Build, reflect
  Data                    & code-gen                            Views
Access          Domain
                                              Domain
 Layer          Service
                                              Context
 (DAL)
Run‐time view (entity lifecycle)
                        Application

     Web server                                 Silverlight
                                                Sil   li ht
                          Query                    Load
  Data
                          Entities    Domain     Entities
Access        Domain                                          Views
 Layer        Service                 Context
                                      C t t       Submit
                                                  S b it
                         Submit
 (DAL)
                          Results                 Results
• Demo
Services

•   Authentication
•   Roles
•   User profile
•   All integrate w/ ASP.NET infrastructure
Using RIA Services effectively
Do                             Don’t

• Require authentication / 
     q                   /     • Deploy with anon access
                                 Deploy with anon access
  roles
     – Authenticate w/ https
                               • E
                                 Expose non‐essential 
                                                    i l
• Utilize query composition
                                 entities/ operations or allow 
     – Filter, sort, page
                                 free‐form access to data
• Consider custom update
  Consider custom update

• Factor into multiple         • Use a single large 
  DomainService classes / 
  D      i S i     l    /        DomainService class
  libraries

• H dl
  Handle errors on server

• Use declarative validation
Questions? 

Más contenido relacionado

La actualidad más candente

Model-driven and low-code development for event-based systems | Bobby Calderw...
Model-driven and low-code development for event-based systems | Bobby Calderw...Model-driven and low-code development for event-based systems | Bobby Calderw...
Model-driven and low-code development for event-based systems | Bobby Calderw...
HostedbyConfluent
 
Aftab Jahangeer_Dot Net
Aftab Jahangeer_Dot NetAftab Jahangeer_Dot Net
Aftab Jahangeer_Dot Net
Aftab Jahangir
 
ForrestDye-Resume-201503
ForrestDye-Resume-201503ForrestDye-Resume-201503
ForrestDye-Resume-201503
Forrest Dye
 
Changing Views on Integration (AUSOUG Webinar Series, May 2020)
Changing Views on Integration (AUSOUG Webinar Series, May 2020)Changing Views on Integration (AUSOUG Webinar Series, May 2020)
Changing Views on Integration (AUSOUG Webinar Series, May 2020)
Lucas Jellema
 
Rest api webinar(3)
Rest api webinar(3)Rest api webinar(3)
Rest api webinar(3)
WSO2
 
JohnConnollyResumePerformance2017
JohnConnollyResumePerformance2017JohnConnollyResumePerformance2017
JohnConnollyResumePerformance2017
John Connolly
 
Anatomy Of A Driver Presentation 09 15 2008
Anatomy Of A Driver Presentation   09 15 2008Anatomy Of A Driver Presentation   09 15 2008
Anatomy Of A Driver Presentation 09 15 2008
ctindale
 

La actualidad más candente (20)

David Kuang(word)
David Kuang(word)David Kuang(word)
David Kuang(word)
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
 
Azure Application Architecture Guide
Azure Application Architecture GuideAzure Application Architecture Guide
Azure Application Architecture Guide
 
Model-driven and low-code development for event-based systems | Bobby Calderw...
Model-driven and low-code development for event-based systems | Bobby Calderw...Model-driven and low-code development for event-based systems | Bobby Calderw...
Model-driven and low-code development for event-based systems | Bobby Calderw...
 
Aftab Jahangeer_Dot Net
Aftab Jahangeer_Dot NetAftab Jahangeer_Dot Net
Aftab Jahangeer_Dot Net
 
Linking Services and Linked Data: Keynote for AIMSA 2012
Linking Services and Linked Data: Keynote for AIMSA 2012Linking Services and Linked Data: Keynote for AIMSA 2012
Linking Services and Linked Data: Keynote for AIMSA 2012
 
ForrestDye-Resume-201503
ForrestDye-Resume-201503ForrestDye-Resume-201503
ForrestDye-Resume-201503
 
Changing Views on Integration (AUSOUG Webinar Series, May 2020)
Changing Views on Integration (AUSOUG Webinar Series, May 2020)Changing Views on Integration (AUSOUG Webinar Series, May 2020)
Changing Views on Integration (AUSOUG Webinar Series, May 2020)
 
Experiences with Oracle WebCenter 11g: Implementing SOA with a User Interface
Experiences with Oracle WebCenter 11g: Implementing SOA with a User InterfaceExperiences with Oracle WebCenter 11g: Implementing SOA with a User Interface
Experiences with Oracle WebCenter 11g: Implementing SOA with a User Interface
 
HTML5 and Timed Media Playback
HTML5 and Timed Media PlaybackHTML5 and Timed Media Playback
HTML5 and Timed Media Playback
 
Differentiating between web APIs, SOA, & integration …and why it matters
Differentiating between web APIs, SOA, & integration…and why it mattersDifferentiating between web APIs, SOA, & integration…and why it matters
Differentiating between web APIs, SOA, & integration …and why it matters
 
Rest api webinar(3)
Rest api webinar(3)Rest api webinar(3)
Rest api webinar(3)
 
Si so product 1 day technical
Si so product 1 day technicalSi so product 1 day technical
Si so product 1 day technical
 
Talent Opportunities - September 2021
Talent Opportunities - September 2021Talent Opportunities - September 2021
Talent Opportunities - September 2021
 
Introducing Apache Kafka and why it is important to Oracle, Java and IT profe...
Introducing Apache Kafka and why it is important to Oracle, Java and IT profe...Introducing Apache Kafka and why it is important to Oracle, Java and IT profe...
Introducing Apache Kafka and why it is important to Oracle, Java and IT profe...
 
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
 
SwiftKnowledge Multitenancy
SwiftKnowledge MultitenancySwiftKnowledge Multitenancy
SwiftKnowledge Multitenancy
 
JohnConnollyResumePerformance2017
JohnConnollyResumePerformance2017JohnConnollyResumePerformance2017
JohnConnollyResumePerformance2017
 
Anatomy Of A Driver Presentation 09 15 2008
Anatomy Of A Driver Presentation   09 15 2008Anatomy Of A Driver Presentation   09 15 2008
Anatomy Of A Driver Presentation 09 15 2008
 
A lifecycle for microservices
A lifecycle for microservicesA lifecycle for microservices
A lifecycle for microservices
 

Destacado

Destacado (7)

Gaelyk - Web Apps In Practically No Time
Gaelyk - Web Apps In Practically No TimeGaelyk - Web Apps In Practically No Time
Gaelyk - Web Apps In Practically No Time
 
Learning Open Source Business Intelligence
Learning Open Source Business IntelligenceLearning Open Source Business Intelligence
Learning Open Source Business Intelligence
 
Concocting an MVC, Data Services and Entity Framework solution for Azure
Concocting an MVC, Data Services and Entity Framework solution for AzureConcocting an MVC, Data Services and Entity Framework solution for Azure
Concocting an MVC, Data Services and Entity Framework solution for Azure
 
Java EE 7: the Voyage of the Cloud Treader
Java EE 7: the Voyage of the Cloud TreaderJava EE 7: the Voyage of the Cloud Treader
Java EE 7: the Voyage of the Cloud Treader
 
Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0
 
Caring about Code Quality
Caring about Code QualityCaring about Code Quality
Caring about Code Quality
 
Is NoSQL The Future of Data Storage?
Is NoSQL The Future of Data Storage?Is NoSQL The Future of Data Storage?
Is NoSQL The Future of Data Storage?
 

Similar a Introduction to WCF RIA Services for Silverlight 4 Developers

Silverlight And .Net Ria Services – Building Lob And Business Applications Wi...
Silverlight And .Net Ria Services – Building Lob And Business Applications Wi...Silverlight And .Net Ria Services – Building Lob And Business Applications Wi...
Silverlight And .Net Ria Services – Building Lob And Business Applications Wi...
rsnarayanan
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio Lightswitch
Rob Windsor
 
Silverlight Document Search Engine
Silverlight Document Search EngineSilverlight Document Search Engine
Silverlight Document Search Engine
Mustata Bogdan
 
A great api is hard to find
A great api is hard to findA great api is hard to find
A great api is hard to find
Dan Diephouse
 
Keynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your businessKeynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your business
WSO2
 
PayaPal-Resume
PayaPal-ResumePayaPal-Resume
PayaPal-Resume
Payal Pal
 
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
rsnarayanan
 

Similar a Introduction to WCF RIA Services for Silverlight 4 Developers (20)

Nuno Godinho
Nuno GodinhoNuno Godinho
Nuno Godinho
 
Silverlight And .Net Ria Services – Building Lob And Business Applications Wi...
Silverlight And .Net Ria Services – Building Lob And Business Applications Wi...Silverlight And .Net Ria Services – Building Lob And Business Applications Wi...
Silverlight And .Net Ria Services – Building Lob And Business Applications Wi...
 
Introducing SQL Server Data Services
Introducing SQL Server Data ServicesIntroducing SQL Server Data Services
Introducing SQL Server Data Services
 
Introducing SQL Server Data Services
Introducing SQL Server Data ServicesIntroducing SQL Server Data Services
Introducing SQL Server Data Services
 
Integrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio LightswitchIntegrating SharePoint 2010 and Visual Studio Lightswitch
Integrating SharePoint 2010 and Visual Studio Lightswitch
 
Mike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns FrameworksMike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns Frameworks
 
Silverlight Document Search Engine
Silverlight Document Search EngineSilverlight Document Search Engine
Silverlight Document Search Engine
 
A great api is hard to find
A great api is hard to findA great api is hard to find
A great api is hard to find
 
Keynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your businessKeynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your business
 
PayaPal-Resume
PayaPal-ResumePayaPal-Resume
PayaPal-Resume
 
soa1.ppt
soa1.pptsoa1.ppt
soa1.ppt
 
Social Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech DaySocial Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech Day
 
Blaze Ds Slides
Blaze Ds SlidesBlaze Ds Slides
Blaze Ds Slides
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services Platform
 
DevOps and Cloud at NI
DevOps and Cloud at NIDevOps and Cloud at NI
DevOps and Cloud at NI
 
Resume
ResumeResume
Resume
 
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
Build Mission Critical Applications On The Microsoft Platform Using Eclipse J...
 
Resume
ResumeResume
Resume
 
Teched India Vijay Interop Track
Teched India Vijay Interop TrackTeched India Vijay Interop Track
Teched India Vijay Interop Track
 
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing Workloa
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing WorkloaAAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing Workloa
AAI-2075 Evolving an IBM WebSphere Topology to Manage a Changing Workloa
 

Más de Saltmarch Media

Más de Saltmarch Media (11)

Integrated Services for Web Applications
Integrated Services for Web ApplicationsIntegrated Services for Web Applications
Integrated Services for Web Applications
 
CDI and Seam 3: an Exciting New Landscape for Java EE Development
CDI and Seam 3: an Exciting New Landscape for Java EE DevelopmentCDI and Seam 3: an Exciting New Landscape for Java EE Development
CDI and Seam 3: an Exciting New Landscape for Java EE Development
 
JBoss at Work: Using JBoss AS 6
JBoss at Work: Using JBoss AS 6JBoss at Work: Using JBoss AS 6
JBoss at Work: Using JBoss AS 6
 
WF and WCF with AppFabric – Application Infrastructure for OnPremise Services
WF and WCF with AppFabric – Application Infrastructure for OnPremise ServicesWF and WCF with AppFabric – Application Infrastructure for OnPremise Services
WF and WCF with AppFabric – Application Infrastructure for OnPremise Services
 
“What did I do?” - T-SQL Worst Practices
“What did I do?” - T-SQL Worst Practices“What did I do?” - T-SQL Worst Practices
“What did I do?” - T-SQL Worst Practices
 
Building Facebook Applications on Windows Azure
Building Facebook Applications on Windows AzureBuilding Facebook Applications on Windows Azure
Building Facebook Applications on Windows Azure
 
Architecting Smarter Apps with Entity Framework
Architecting Smarter Apps with Entity FrameworkArchitecting Smarter Apps with Entity Framework
Architecting Smarter Apps with Entity Framework
 
Agile Estimation
Agile EstimationAgile Estimation
Agile Estimation
 
Alternate JVM Languages
Alternate JVM LanguagesAlternate JVM Languages
Alternate JVM Languages
 
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6A Cocktail of Guice and Seam, the missing ingredients for Java EE 6
A Cocktail of Guice and Seam, the missing ingredients for Java EE 6
 
A Bit of Design Thinking for Developers
A Bit of Design Thinking for DevelopersA Bit of Design Thinking for Developers
A Bit of Design Thinking for Developers
 

Último

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 

Introduction to WCF RIA Services for Silverlight 4 Developers

  • 1. Building Applications with WCF  RIA Services  Stephen Forte Chief Strategy Officer, Telerik www.telerik.com Stevef.hk@gmail.com S f hk@ il Blog: Stephenforte.net
  • 2. Speaker.Bio() • Chief Strategy Officer of Telerik • Certified Scrum Master Certified Scrum Master • Active in the Community: – International Conference Speaker for 13+ Years International Conference Speaker for 13+ Years – RD, MVP and INETA Speaker  – Co‐moderator & founder of NYC .NET  Developers Group   http://www.nycdotnetdev.com D l G htt // d t td – Wrote a few books: SQL Server 2008 Developers Guide  (MS Press) • MBA from the City University of New York • Past: – CTO and co‐Founder of Corzen, Inc. (TXV: WAN) – CTO of Zagat Survey 
  • 4. RIA Services in n‐tier applications Trust Boundaryy Web W b Service Data Access App App Layer View Logic Logic (DAL) Database Framework, tools and services with prescriptive pattern for n tier applications prescriptive pattern for n‐tier applications
  • 6. Using the right tool for the job Using the right tool for the job WCF Layer Description RIA Services RIA Services Prescriptive E2E experience for Silverlight E2E experience for Silverlight  applications Data Services Turn‐key entity‐oriented programming  model for HTTP/RESTful services Workflow Services Workflow‐oriented programming model for  long‐running business processes long‐running business processes Service Model Method‐oriented programming model for  WS‐* & REST developers 1. All programming models can leverage the wide‐ranging set of behaviors and  protocols 2. 2 We have good integration in SL4/Dev10, that gets even better in Dev11 We have good integration in SL4/Dev10 that gets even better in Dev11 Microsoft Confidential
  • 7. RIA Services Design principles RIA Services Design principles • End‐to‐end view of an application: framework,  pattern, tooling and services l d • Prescriptive approach to app logic  • DAL‐neutral and targets multiple presentation  technologies
  • 8. Data access & presentation neutral Data access & presentation neutral App Logic XML,  JSON,  Binary
  • 9. Design‐time view Solution (Application) Server project Client project Entities Entities Build, reflect Data & code-gen Views Access Domain Domain Layer Service Context (DAL)
  • 10. Run‐time view (entity lifecycle) Application Web server Silverlight Sil li ht Query Load Data Entities Domain Entities Access Domain Views Layer Service Context C t t Submit S b it Submit (DAL) Results Results
  • 12. Services • Authentication • Roles • User profile • All integrate w/ ASP.NET infrastructure
  • 13. Using RIA Services effectively Do Don’t • Require authentication /  q / • Deploy with anon access Deploy with anon access roles – Authenticate w/ https • E Expose non‐essential  i l • Utilize query composition entities/ operations or allow  – Filter, sort, page free‐form access to data • Consider custom update Consider custom update • Factor into multiple  • Use a single large  DomainService classes /  D i S i l / DomainService class libraries • H dl Handle errors on server • Use declarative validation