the ultimate web service client: making the most of your soa investment mike pelton developer &...
TRANSCRIPT
The Ultimate Web Service The Ultimate Web Service Client:Client:Making the Most of Your Making the Most of Your SOA InvestmentSOA Investment
Mike PeltonMike PeltonDeveloper & Platform GroupDeveloper & Platform GroupMicrosoft LtdMicrosoft [email protected]@microsoft.com
Smart clients are easily deployed and managed client applications Smart clients are easily deployed and managed client applications that provide an adaptive and interactive experience by that provide an adaptive and interactive experience by
leveraging local resources and intelligently connecting to leveraging local resources and intelligently connecting to distributed data sources. distributed data sources.
Web Services &Offline/Online
support
DeviceAdaptability
Tough toDeploy
HeavyFootprint
DLL Hell
NetworkDependency
Poor UserExperience
Rich UIComplex
To Develop
Rich UserExperience
DeveloperProductivity
Responsive
BroadReach
Easy ChangeManagement
Ease ofDeployment
Offline Capable Offline Capable
Device FlexibilityDevice Flexibility
Maximise Local Maximise Local ResourcesResources
Smart Client CharacteristicsSmart Client Characteristics
Intelligent Intelligent Deployment & Deployment & UpdateUpdate
Connected - Web Connected - Web Services / SOAServices / SOA
Microsoft Smart Client Microsoft Smart Client PlatformsPlatforms
Mobile Mobile Field Field
Mobile Mobile Field Field
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Office System 2003 Windows MobileWindows Forms
Version 1.1
Version 2.0
CurrentCurrentGenerationGeneration
NextNextGenerationGeneration
Version 1.0
Version 1.1“Whidbey”
Integrating Integrating Office XML Office XML
with with Enterprise Enterprise
Data Data
Integrating Integrating Office XML Office XML
with with Enterprise Enterprise
Data Data
E-GovernmentE-GovernmentE-GovernmentE-Government
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Mobile Mobile Field Field
Mobile Mobile Field Field
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Mobile Mobile Field Field
Mobile Mobile Field Field
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Windows Forms
Version 1.1
Version 2.0
CurrentCurrentGenerationGeneration
NextNextGenerationGeneration
“Whidbey”
Radically simplified application Radically simplified application deploymentdeployment
ClickOnce deployment, update, rollbackClickOnce deployment, update, rollback
Visually Appealing UIVisually Appealing UINew Data ControlsNew Data ControlsOffice Look and FeelOffice Look and Feel
Developer productivityDeveloper productivitySimplify working with dataSimplify working with dataFewer lines of codeFewer lines of codeFew clicksFew clicks
.NET Framework distribution.NET Framework distribution120 million deployments120 million deploymentsPreinstalled on 60% of new machines Preinstalled on 60% of new machines and growingand growingIncluded on SP2 CDIncluded on SP2 CDConsumerConsumer
55% installed by end of ’0455% installed by end of ’0475% installed by end of ’0575% installed by end of ’05
EnterpriseEnterprise50% installed by end of ’0450% installed by end of ’0468% installed by end of ‘0568% installed by end of ‘05
Office System 2003 Windows Mobile
Version 1.0
Version 2.0
Integrating Integrating Office XML Office XML
with with Enterprise Enterprise
Data Data
Integrating Integrating Office XML Office XML
with with Enterprise Enterprise
Data Data
E-GovernmentE-GovernmentE-GovernmentE-Government
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Mobile Mobile Field Field
Mobile Mobile Field Field
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Microsoft Smart Client Microsoft Smart Client PlatformsPlatforms
Office System 2003
Version 1.0
Version 2.0
Integrating Integrating Office XML Office XML
with with Enterprise Enterprise
Data Data
Integrating Integrating Office XML Office XML
with with Enterprise Enterprise
Data Data
E-GovernmentE-GovernmentE-GovernmentE-Government
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Connect live business data to Connect live business data to your documents & access them off-your documents & access them off-lineline
Increase velocity and accuracy of Increase velocity and accuracy of decision makingdecision making
Increase worker productivityIncrease worker productivity
Reduce error caused by data re-entry & Reduce error caused by data re-entry & copy/pastecopy/paste
Leverage existing Office experience of Leverage existing Office experience of end usersend users
Reach 400+ million practised Office Reach 400+ million practised Office usersusers
Eliminate training and ramp up time on Eliminate training and ramp up time on new applicationsnew applications
Reduce new application burn-in errorsReduce new application burn-in errors
Leverage rich and robust Office Leverage rich and robust Office functionalityfunctionality
High developer productivity = reduced High developer productivity = reduced time to develop time to develop
Greatly improved maintainability & Greatly improved maintainability & deployment optionsdeployment options
Optimize use of PC & central resources Optimize use of PC & central resources
Mobile Mobile Field Field
Mobile Mobile Field Field
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Windows Forms
Version 1.1
Version 2.0
CurrentCurrentGenerationGeneration
NextNextGenerationGeneration
“Whidbey”
Windows Mobile
Mobile Mobile Field Field
Mobile Mobile Field Field
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Microsoft Smart Client Microsoft Smart Client PlatformsPlatforms
Office System 2003
Version 1.0
Version 2.0
Integrating Integrating Office XML Office XML
with with Enterprise Enterprise
Data Data
Integrating Integrating Office XML Office XML
with with Enterprise Enterprise
Data Data
E-GovernmentE-GovernmentE-GovernmentE-Government
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Mobile Mobile Field Field
Mobile Mobile Field Field
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Smart Client Smart Client Front-end to Front-end to
Enterprise LOB Enterprise LOB SystemsSystems
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Windows Forms
Version 1.1
Version 2.0
CurrentCurrentGenerationGeneration
NextNextGenerationGeneration
“Whidbey”
Windows Mobile
Mobile Mobile Field Field
Mobile Mobile Field Field
Instant access to data Instant access to data anywhere, anytimeanywhere, anytime
Form factor and instant-Form factor and instant-on more appropriate for on more appropriate for most field workmost field work
Access existing Web Access existing Web services in SOAsservices in SOAs
Leverage .NET Leverage .NET development skills and development skills and code on devices code on devices with .NET Compact with .NET Compact FrameworkFramework
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences
Microsoft Smart Client Microsoft Smart Client PlatformsPlatforms
Online/Offline CapabilitiesOnline/Offline Capabilities
TodayTodaySmart Client Offline Block on MSDNSmart Client Offline Block on MSDN
Architectural model for adding offline Architectural model for adding offline capabilities to a smart clientcapabilities to a smart client
Code, Docs, Sample applications, Test casesCode, Docs, Sample applications, Test cases
.NET Framework 1.1, Windows XP.NET Framework 1.1, Windows XP
Next Year - .NET Framework 2.0Next Year - .NET Framework 2.0NetworkInterfaceNetworkInterface, , NetworkChangeNetworkChange
Year AfterYear AfterNetwork Location AwarenessNetwork Location Awareness Service in Service in LHLH
Smart Client Offline BlockSmart Client Offline Block
Approaches we can takeApproaches we can takeService-centricService-centric
Data-centricData-centric
Data-Centric ApproachData-Centric Approach
Client maintains local databaseClient maintains local databaseMSDEMSDESQL Server (CE)SQL Server (CE)
Replicates data from the storeReplicates data from the storeCopies data and updates whilst onlineCopies data and updates whilst onlineLocally stores updates whilst offlineLocally stores updates whilst offlineTake advantage of pre-built solutionsTake advantage of pre-built solutions
Client DB & server DB tightly coupled Client DB & server DB tightly coupled by data representationby data representation
Data-Centric ApproachData-Centric ApproachRobust data conflict detection at Robust data conflict detection at column and row levelcolumn and row level
Data validation and constraints. Data validation and constraints.
Merge-replication is a two-tier Merge-replication is a two-tier architecturearchitecture
Constraints in terms of manageability Constraints in terms of manageability and maintainability. and maintainability.
Local data storeLocal data storeMay not be suitable for “small” devicesMay not be suitable for “small” devices
Change tracking code is in the Change tracking code is in the RDBMSRDBMS
No need to write additional code for:No need to write additional code for:Change trackingChange trackingConflict detection and resolutionConflict detection and resolution
The Caching Application The Caching Application BlockBlockClient or Service Agent requests cached data Client or Service Agent requests cached data
If the data exists in the cache it’s returnedIf the data exists in the cache it’s returnedIf not, dispatch a Service Agent to obtain the dataIf not, dispatch a Service Agent to obtain the data
The CacheManager adds metadata to cached data The CacheManager adds metadata to cached data
The framework can monitor the data's relevanceThe framework can monitor the data's relevancelast accessed,last accessed,how old it is.... how old it is....
The metadata can define conditions for expiryThe metadata can define conditions for expiry
Data can be cached in several formatsData can be cached in several formatsDatabaseDatabaseMemory-mapped fileMemory-mapped fileSingleton objectSingleton object
Caching Block includes example classes for:Caching Block includes example classes for:CachingCachingScavengingScavengingExpirationExpirationData protectionData protection
Service-Centric ApproachService-Centric Approach
Client interacts with services through Client interacts with services through requestsrequests
Decoupled clientDecoupled client
Offline logic is built into the clientOffline logic is built into the client
Client/Service data representations Client/Service data representations can varycan vary
Custom conflict resolution and Custom conflict resolution and change trackingchange tracking
Offline Block ArchitectureOffline Block Architecture
ServiceAgentServiceAgentCreates requestsCreates requests
Persists to queuePersists to queue
Notifies appNotifies app
ExecutorExecutorExecutes requestsExecutes requests
Notifies AgentNotifies Agent
ServiceRequestServiceRequestEncapsulated Encapsulated request detailsrequest details
ApplicationApplication
ExecutorExecutor
Service AgentService Agent
ServiceService
Service RequestService Request
Queue
Challenges of going offlineChallenges of going offline
Detecting the network stateDetecting the network state
Replicating data cleanlyReplicating data cleanly
Securing the local data storeSecuring the local data store
Where does business logic Where does business logic
reside?reside?
Keeping the UI responsiveKeeping the UI responsive
Detecting the network Detecting the network automaticallyautomatically
ServiceAgent
ConnState
RefData
MessageData
Connection detectionConnection detectionWhat just happened?What just happened?
UI LayerUI Layer(view)(view)
ConnectionConnectionManagerManager(model)(model)
ControllerControllerConnectionConnectionDetectionDetectionStrategyStrategy
CreateCreatess
Registers for Registers for notification notification fromfrom
UtilizesUtilizes
DetermineDetermines Physical s Physical ConnectioConnection n PresencePresence
State State Changed: Changed: Going Going OfflineOffline
ServiceAgent
ConnState
RefData
MessageData
Detailed ViewDetailed View
ApplicationApplicationService AgentService Agent
ApplicationApplication
Online ProxyOnline Proxy
ConnectionConnectionManagerManager
Service AgentService AgentManagerManager Service AgentService Agent
Data LoaderData LoaderManagerManager
QueueQueueManagerManager
ExecutorExecutor
ReferenceReferenceData CacheData Cache
Cache BlockCache Block
ConnectionConnectionDetection StrategyDetection Strategy
QueueQueueStorageStorage
Detects the current state of the physical connection
• Manages connection state• Fires an event when
connection state change occurs
• Has public methods to change the online/offline state
Detailed ViewDetailed View
ApplicationApplicationService AgentService Agent
ApplicationApplication
Online ProxyOnline Proxy
ConnectionConnectionManagerManager
Service AgentService AgentManagerManager Service AgentService Agent
Data LoaderData LoaderManagerManager
QueueQueueManagerManager
ExecutorExecutor
ReferenceReferenceData CacheData Cache
Cache BlockCache Block
ConnectionConnectionDetection StrategyDetection Strategy
QueueQueueStorageStorage
• Provides the base class implemented by all application-supplied Service Agents.
• Base class is responsible for registering the service agent with the service agent registry.
• Returns the results back to the appropriate Service Agents after processing
• Allows the application to request reference data to be downloaded
• Facade for the Queue Storage Providers:
• Methods for queuing and dequeuing messages.
Provides:• Ability to queue
messages• Channel for
getting results back to the application
Detailed ViewDetailed View
ApplicationApplicationService AgentService Agent
ApplicationApplication
Online ProxyOnline Proxy
ConnectionConnectionManagerManager
Service AgentService AgentManagerManager Service AgentService Agent
Data LoaderData LoaderManagerManager
QueueQueueManagerManager
ExecutorExecutor
ReferenceReferenceData CacheData Cache
Cache BlockCache Block
ConnectionConnectionDetection StrategyDetection Strategy
QueueQueueStorageStorage
• When online:• Takes messages off the
queue• Calls the Online Proxy
to send them to the remote service.
• Sends responses from the remote service back to the application.
• Provides the data store
•message data•operations
Replicating DataReplicating Data
Reference DataReference DataUsually read-onlyUsually read-only
Needed to complete a workflowNeeded to complete a workflow
Should be current with serverShould be current with server
Message DataMessage DataData created during a workflowData created during a workflow
Often transactional in natureOften transactional in nature
ServiceAgent
ConnState
RefData
MessageData
Downloading / Downloading / Uploading DataUploading Data
ServiceAgent
ConnState
RefData
MessageData
Syncing DataSyncing DataWhat just happened?What just happened?
Download Reference DataDownload Reference DataUse a proxy to retrieve data from sourceUse a proxy to retrieve data from source
Store data in the Reference Data CacheStore data in the Reference Data Cache
Upload Changed DataUpload Changed DataUse Message Data Management Use Message Data Management SubsystemSubsystem
In this case, a queueIn this case, a queue
ServiceAgent
ConnState
RefData
MessageData
Offline operationsOffline operationsApplicationApplication
ConnectionConnectionManagerManager
QueueQueue
Application ServiceApplication ServiceAgentAgent
Service AgentService AgentManagerManager
Service AgentService AgentRegistryRegistry
Service AgentService Agent
Completing operations Completing operations onlineonline
ApplicationApplication
Service AgentService AgentManagerManager
QueueQueueStorageStorage
Application ServiceApplication ServiceAgentAgent
Online ProxyOnline ProxyExecutorExecutor
Service AgentService AgentRegistryRegistry
Service AgentService Agent
Bringing it all togetherBringing it all together
Smart client applicationSmart client applicationService Agent ManagementService Agent Management
Connection State ManagementConnection State Management
Message Data ManagementMessage Data Management
Reference Data ManagementReference Data Management
Error handlingError handling
ServiceAgent
ConnState
RefData
MessageData
The Office 2003 Smart The Office 2003 Smart ClientClient
Office 2003 provides a great Smart Office 2003 provides a great Smart Client environmentClient environment
XML capabilitiesXML capabilities
Smart Document capabilitiesSmart Document capabilities
Research Library capabilitiesResearch Library capabilities
Information Bridge FrameworkInformation Bridge Framework
Visual Studio Tools for OfficeVisual Studio Tools for Office
InfoPath web service form generationInfoPath web service form generation
General Information Work General Information Work FlowFlow
Storage
Server process
XML, data ordocuments
Microsoft Office 2003 Development TechnologiesMicrosoft Office 2003 Development Technologies
Office programsCreate contentAnalyze/review informationProcess documents
Server ProcessingCreate documentPre-populate templateSearch / extract
Post-Office ProcessingBusiness workflowCollaborative workPublish/distribute/archive
assistive
core contentStorage
Server process
Office U.I.
Custom controls / U.I.
Smart tags
Smart documents
XML schemaData bindingObject modelsResearch task paneDoc. actions task pane
User InteractionBaseProgrammability
XML
Documents
Data
Post-Office Processing
Web services
IBF
Research services
ADO.NET
Web queries
Information Access
XML
VSTO v2005 data island
Server-side Processing
XML in Office 2003XML in Office 2003
Office documents offer XML as a Office documents offer XML as a persistence formatpersistence format
Applications can generate documents Applications can generate documents through WordMLthrough WordML
Office documents can be associated Office documents can be associated with an XML Schemawith an XML Schema
User works within the rich Office User works within the rich Office environmentenvironment
Schema valid XML data is generatedSchema valid XML data is generated
Can save entire document or just XMLCan save entire document or just XMLCan apply XSL transformsCan apply XSL transforms
Solution Benefits With XML Solution Benefits With XML Documents Documents
•Text•Document•Fragment•Image
•Text•Document•Fragment•Imagesavesave
33Searching &Searching &RepurposingRepurposingContentContent
QueryQuery ResultResult
22 Business Process EfficiencyBusiness Process Efficiency
EfficientcaptureEfficientcapture
ValidatedinformationValidated
informationWeb service
(loose coupled connection)Web service
(loose coupled connection)
+ formatting+ formatting
11 Improved Data AccessImproved Data Access
+ intelligent receipt+ intelligent receipt
55 Document AssemblyDocument Assembly
datadata
formattingformatting
Context-specificassistance
Context-specificassistance
XMLstructure
XMLstructure
44 Intelligent ApplicationsIntelligent Applications
XML
Office 2003 Smart Office 2003 Smart DocDocumentsuments
Extension of associating a document Extension of associating a document with an XML Schemawith an XML Schema
Smart Document Task PaneSmart Document Task PaneFollows the user through the documentFollows the user through the document
Provides contextual content, actions & Provides contextual content, actions & helphelp
Customizable Customizable throughthrough VB6 or VS.NET VB6 or VS.NET
Extension of the Smart Tags 2.0 APIExtension of the Smart Tags 2.0 API
Office 2003 Research Office 2003 Research LibraryLibrary
Searches information sources from Searches information sources from within a documentwithin a document
Returns rich content, forms, actionsReturns rich content, forms, actions
Open architecture via XML Web Open architecture via XML Web ServicesServices
RegistrationRegistration and and QueryQuery methods methods
No code on the clientNo code on the client
Integrated across Office 2003Integrated across Office 2003Word, Excel, PowerPoint, Outlook, etc.Word, Excel, PowerPoint, Outlook, etc.
A number of out-of-the-box servicesA number of out-of-the-box servicesDictionary, etc.Dictionary, etc.
Our strategic tool for developing Office Our strategic tool for developing Office solutionssolutions
Currently supports building document-centric Currently supports building document-centric solutions for Word and Excel 2003solutions for Word and Excel 2003
VSTO makes Office development VSTO makes Office development approachable to the profession developerapproachable to the profession developer
Provides all the productivity of Visual StudioProvides all the productivity of Visual Studio
Provides all the power of the .NET FrameworkProvides all the power of the .NET Framework
Leverages the skills of .NET developersLeverages the skills of .NET developers
VSTO solutions are secure and easy to VSTO solutions are secure and easy to deploydeploy
Based on .NET Code Access SecurityBased on .NET Code Access Security
Online ClickOnce deployment modelOnline ClickOnce deployment model
Visual Studio Tools for the Visual Studio Tools for the Microsoft Office SystemMicrosoft Office System
Information Bridge Information Bridge FrameworkFramework
Web Service-based architecture (SOA)Centralized metadata/UI serverRuntime for smart tag / XML event initiationWindows Forms and task pane support
MetadataMetadata
FinanceFinance
ERPERP
CRMCRM
Smart ClientsSmart Clients
Web Web ServicesServices
Web Web ServicesServices
Information Bridge Information Bridge ArchitectureArchitecture
ClientClient
ServerServer
CRM
CustomerInformation
Invoices
Orders SAPLegacy
ApplicationAggregation
Service
Web ServiceOptional: Information
Bridge Compliant
Web ServiceOptional: Information
Bridge Compliant
Web ServiceOptional: Information
Bridge Compliant
Office Application
(Word, Excel, Outlook)Attached SchemaAttached Schema
Smart TagSmart Tag
MetadataMetadataCacheCache User ControlUser Control
DesignerDesigner
Visual Studio
Development OnlyDevelopment Only
Web services
U.I.U.I.(WinForm, XSLT)(WinForm, XSLT)
U.I.U.I.(WinForm, XSLT)(WinForm, XSLT)
(SOAP)
MetadataMetadataDesignerDesigner
Metadata ServiceMetadata Service MetadataMetadataDatabaseDatabase
Information Bridge Runtime(Office add-in)
Task Pane ManagerTask Pane Manager
Office IntegrationOffice Integration
U.I. RenderingU.I. Rendering
Device ProgrammabilityDevice ProgrammabilityBroad Reach vs. Smart DeviceBroad Reach vs. Smart Device
ASP.NET Mobile ASP.NET Mobile ControlsControls
ASP.NET Mobile ASP.NET Mobile ControlsControls
Mobile Web Mobile Web BrowserBrowser
Mobile Web Mobile Web BrowserBrowser
Remote Web PagesRemote Web Pages
Device Operating SystemDevice Operating SystemDevice Operating SystemDevice Operating System
Smart Device Smart Device ProgrammabilitProgrammabilit
yy
Smart Device Smart Device ProgrammabilitProgrammabilit
yy
.NET Compact .NET Compact FrameworkFramework
.NET Compact .NET Compact FrameworkFramework
Local CodeLocal Code
Smart clientSmart client
Smart Device Smart Device ProgrammabilityProgrammabilityVS .NET and .NET Compact VS .NET and .NET Compact FrameworkFramework
Common Language RuntimeCommon Language Runtime
Base Class LibrariesBase Class Libraries
ADO.NET and XMLADO.NET and XML
ASP.NETASP.NETWeb FormsWeb Forms
Web Web ServicesServices
WindowsWindowsFormsForms
VisualVisualBasicBasic C++C++ C#C# J#J# …… V
isu
al S
tud
io .N
ET
Vis
ual S
tud
io .N
ET
Smart Device Smart Device ProgrammabilitProgrammabilityy• Targets .NET Targets .NET Compact Compact FrameworkFramework• Integrated IDEIntegrated IDE• EmulatorsEmulators• Remote Remote debuggingdebugging
.NET Compact .NET Compact FrameworkFramework• Managed codeManaged code• Web servicesWeb services• Rich subset Rich subset of .NET of .NET Framework Class Framework Class LibrariesLibraries
Windows Forms SamplesWindows Forms Samples
www.windowsforms.net www.windowsforms.net
IssueVison, FotoVision, TaskVision, IssueVison, FotoVision, TaskVision, Infragistics TrackerInfragistics Tracker
Smart Device DataSmart Device Data
SQL Server CESQL Server CEOn-device data engine for Windows CE-On-device data engine for Windows CE-powered devicespowered devices
Rich replication and synchronization with Rich replication and synchronization with SQL ServerSQL Server
Designed for high performance in Designed for high performance in resource-constrained environmentsresource-constrained environments
Managed .NET Compact Framework Managed .NET Compact Framework providerprovider
ResourcesResourcesWeRock 247WeRock 247
Sample Application Suite, Documentation, Tutorials, etcSample Application Suite, Documentation, Tutorials, etc
Windows Forms ResourcesWindows Forms ResourcesRecent Web Cast SeriesRecent Web Cast SeriesSample ApplicationsSample ApplicationsSamplesSamples
MSDN Developer CentersMSDN Developer CentersSmart Client Developer Smart Client Developer CenterCenterVisual Studio 2005Visual Studio 2005Mobile DevicesMobile DevicesOffice System 2003Office System 2003
Office DevelopmentOffice DevelopmentXML, Smart Documents, Research Services & More XML, Smart Documents, Research Services & More Research ServicesResearch ServicesInformation Bridge FrameworkInformation Bridge FrameworkVisual Studio Tools For OfficeVisual Studio Tools For Office
© 2004 Microsoft Limited. All rights reserved.© 2004 Microsoft Limited. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summaryThis presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary..