Upload
christian-thilmany
View
1.213
Download
3
Tags:
Embed Size (px)
DESCRIPTION
Learn how to build fully functional business applications in SilverLight today with databinding, network services, visual state managner, and custom data templates. Get a peek into waht is coming tomorrow with the business application framework for SilverLight
Citation preview
Building Business Applications in SilverLight 2 Today and Tomorrow
Christian Thilmany – UX Blog – www.flyover18.comUser Experience Architect - Microsoft Developer Platform & Evangelism
Agenda
•Silverlight as a platform for business apps
•Building business apps with SilverLight 2 today
•What comes next?
Silverlight 2 Lays the Foundation
•Huge step forward from SL 1– Rectangles -> Buttons– JavaScript -> C#/VB
•Enables business applications today– Has the needed platform building blocks– Core – CLR, BCL, XML, Networking– UI – Core controls, control model, layout, styling,
databinding
•Lays the foundation for what comes next
What platform for your business app?
RichnessRichness
ReachReach
What makes a business app tick?
•Business apps are almost universally about working with data in some shape or form.
•At it’s a heart, a business app needs:–A way to move data between tiers
–A way to shape data (sort, filter, etc..)
–A way to bind & display data
–A way to soundly apply business logic
Moving Data – Simple Cases
•Browser integrated networking stack– Cookie Support
– Make direct HTTP requests (e.g. RSS Feeds)
•Complete Service stack– Use WCF to build SOAP or REST services
– Simple “Add Service Reference” experience to consume
– Use WebClient to consume REST and Plain-Old-XML
Moving Data – Advanced Cases
•Cross-domain Support– Requests constrained to same domain by default– Cross domain enabled via server side policy file
•2-Way communication– Sockets – Low level transport– WCF Duplex – HTTP pull based messaging
•ADO.NET Data Services– Easy way to expose & consume data via REST– Optimal for straight data access layer -> client
scenarios
Data Binding
•Data Binding– One way – any CLR object w/
INotifyPropertyChanged
– Two way
– Value Converters for converting/formatting
– Core Validation Hooks
•Collection Binding– A full & growing set of controls
– Data Template based customization
– Leverage of ObservableCollections (esp. Blend)
Moving and Binding Data
Displaying Data
•Custom Control Model
•Core list controls in the box– Datagrid
– ItemsControl
– ListBox
•Controls Toolkit providing many more– Charts – data visualization
– Business Controls – e.g. spinner, autocompletebox, etc.
•All fully stylable
Styling and Navigating
•Styling• Data Templates
• Control Templates
• Resource Dictionaries
•Navigating• Visual State Manager
• Navigation Controls – e.g. Tree View
Displaying, Styling, and Navigating
All Possible Today but Require Work
•Updateable data
•Validation
•Data paging
•Server side filtering
•Authentication
•More fully featured UI - Navigation
•Business Logic
Business Application FrameworksBusiness Application Frameworks
Base FrameworksBase Frameworks
Base PlatformBase Platform
Silverlight Business Components
Network /ServicesNetwork /Services
ControlsControlsData
BindingData
Binding
CLRCLR
Core UI EngineCore UI Engine
Data Shaping
(XML/LINQ)
Data Shaping
(XML/LINQ)
Navigation
NavigationControl
ModelControl Model
Business ControlsBusiness Controls
Business Logic
Business Logic
Validation
Validation
App Services
App Services
Data Loading
Data Loading
Tutorial and Code at - www.flyover18.com
Company Confidential
User ExperienceMicrosoft Silverlight | Windows Presentation Foundation | Windows Internet Explorer 8 | Windows Vista
Targeted Training for User Experience
Filter through the 500+ training sessions on our training Web site, www.isvinnovation.com
Telephone Technical Support
4 hours of pre-launch technical support for each solution you enroll.
Project Planning Support and Consulting
Receive up to four hours of project planning, consulting, and design support from experienced SilverLight and Windows Presentation Foundation design professionals
Free Hosting
Take advantage of free hosting services for your solution!