Building Smart Client Applications in Microsoft Visual Studio 2008Tony GoodhewProduct [email protected]
DEV328
Reusability
Key Smart Client Tech∙Ed Topics
Post VS 2008
Taking Data Offline
Working with Data
User Profiles
User Experience
Deployment
Working With Data
Problem:Data != Objects
LINQ Architecture
LINQ-enabled data sources
LINQ To
Objects
LINQ To XML
LINQ-enabled ADO.NET
Visual Basic Others
LINQ To
Entities
LINQ To SQL
LINQ To
Datasets
.Net Language Integrated Query (LINQ)
Visual C#
Objects Relational XML
.NET Language Integrated Query Framework
demo
Taking Data Offline
Problems:Nowhere to keep local dataKeeping local and server in sync
Transport
ServiceServiceProxy
Data Forms
Data Access
ServerSyncProviderClientSyncProvider
Sync Component Architecture
SQL Server Compact
Edition 3.5
Sync Agent
SyncAgent
SQL Server Compact
Edition 3.5
Server DB
Client
Client Server
Can push changes directly or via services
Sync Services for ADO.NET
demo
User Profiles
Problem:Expensive to
leverage existing web services
Client Application Services
Client App
Web Page
Internet
Web Services
Experience unchanged on lost connectivity
AuthenticationRolesProfiles
Client Application Services
demo
User Experience
Problem:Design Matters
Controls / Content
User Controls
Windows
WPF Windows
FormsWindows Forms Application
WPF Application
Controls / Content
User Controls
Forms
ActiveX
Integration Scenarios
Building a Hybrid Application
demo
Designer / Developer Collaboration
Expression Blend
Control TemplatesData TemplatesAnimationAdvanced LayoutsTriggers
Visual Studio 2008
LayoutXAML EditingElement NavigationVB & C# code editingDebuggingDeployment
Problem:Deployment
ClickOnce Deployment Framework
Isolated Low Impact Declarative Installation
Smart Client Deployment Meets Web Deployment
Auto Update
Deep Microsoft Visual Studio Integration
Rich Security Model
VS 2008 ClickOnce Enhancements
Application no longer tied to a publish location on signing
Added Firefox Support
Distributed Apps maintain the author’s branding
Auth Certificates now renewable across updates
Works across authenticated proxies
Reusability
What Is "Acropolis?"
Rich, extensible run-time frameworkDesign-time tools to support visual composition of componentsLeverages Windows Presentation Framework (WPF), Windows Workflow Foundation (WF), Windows Communications Foundation (WCF) technologies
Dramatically simplify the way to define, develop,
configure, deploy and manage client applications
Customer Feedback
Customer, Customer, Customer…Listened to your feedback and fixed
the top customer reported bugs
Improved designer performance
Fixed bugs that caused ‘Design-Time Error List’ to appear
Increased custom Smart Tag stability
Allowed for custom Toolbox Population
Many, many more…
Design-Time Error List
Similar to the Build Error ListPrevents controls from disappearingList was :
VagueClutteredImposingFrustrating
New Design-Time Error List
Improved usabilityGroups similar errors into bucketsProvides targeted help Links to the MSDN ForumsAllows you to “Ignore and Continue”
Reusability
Key Smart Client Tech∙Ed Topics
Post VS 2008
Taking Data Offline
Working with Data
User Profiles
User Experience
Deployment
Questions?
© 2007 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.