Date post: | 14-Jan-2016 |
Category: |
Documents |
Upload: | solomon-bailey |
View: | 217 times |
Download: | 0 times |
T41F - Building Data-driven Applications in ASP.NET and Silverlight
Nikhil KothariSoftware ArchitectMicrosoft Corporation
Agenda
Intro demoVision and value propositionsDemos to make them concrete
Hello .NET RIA ServicesFrom 0 to 60 – A Basic Application
demo
Vision and Goals
Simplify RIA developmentn-tier is hard, and un-natural
Bring ASP.NET/RAD-style productivity to RIA development
Focus on end-to-end scenarios and solutions
Value Propositions
Focus on data in an end-to-end mannerA unified story for client and server developmentA prescriptive framework that targets key scenarios, and leads the common developer to a pit of success
End-to-End Data
Beyond accessing and editing rowsApp-specific custom operationsData shaping (sorting, paging, and filtering)Rules (validation, authorization, and conflict handing)Batching and offline
Web ApplicationBrowser Rich Internet Application
DB
Services
Other Applications
App Model that Spans Tiers
A single logical applicationClient is an extension of the server
Data Access Layer
AppLogic
Services
HTMLPresentati
onLogic
Network
Services
End-to-End Data Across TiersLINQ, Editing, Validation, App-specific operations and Batching
demo
A Prescriptive Pattern
Application
DB
Services
Data Access Layer
AppLogic
Presentation
Logic
Network
DomainService: CRUD + App Logicclass CatalogIQueryable<Product> GetProducts()void UpdateProduct(Product, Product)void ToggleSale(Product)Validation and authorization rules,
Application workflows, …
Data Model class Product
DomainContext: Bindable Dataclass CatalogEntityList<Product> Products { get }void LoadProducts(IQueryable<Product>)void ToggleSale(Product)
class ProductData members + Validationvoid ToggleSale()
Data Model +Metadata +
Shared Code
A Pattern that Scales and Grows
Support for multiple presentation tiers
and data access technologies
AppLogic
DatabasesADO.NET,ORMs (LTS, EF, …)
CLR Lists/ObjectsRepository(nHibernate, …)
ServicesREST/SOAP(Azure, …)
XML, JSON, Binary
.NET ClientsSilverlight, WPF
Standards ClientsJavaScript
Server RenderingHTML, SEO,Printing, …
ServicesWCF
Unit Test Code
Exploring the Pattern
demo
Key Take-aways
Focus on data in an end-to-end mannerA unified story for client and server developmentA prescriptive framework that targets key scenarios, and leads the common developer to a pit of success
Roadmap
First public CTP today at MIXWorks with Silverlight 3 and .NET 3.5 SP1
On-going CTPs through RTMPlease provide feedback!Go-live later in the yearRTM soon after
Full support for ASP.NET, Ajax, and WPF applications also forthcoming
Resources
Silverlight Community Sitehttp://silverlight.netAdditional information, forums, docs, etc.
Blogshttp://www.nikhilk.nethttp://blogs.msdn.com/brada
Please Complete an Evaluation FormYour feedback is important!
Please see the back of your attendee notebook for evaluation formsTemp Staff at the back of the room have additional evaluation form copies
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Abstract
Learn how Microsoft is simplifying the traditional n-tier application pattern by bringing together ASP.NET and Silverlight, and hear about an application framework that allows you to tap into the synergy of .NET on the server and on the client. Learn about patterns for working with data, implementing reusable and independently testable application logic, and application services that readily scale with growing requirements.