Tech·Ed North America 2009 1/18/2019 4:15 PM © 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.
Building Offline Applications Using Microsoft Silverlight 3 Tech·Ed North America 2009 1/18/2019 4:15 PM Building Offline Applications Using Microsoft Silverlight 3 Tim Heuer Program Manager Silverlight Microsoft Corporation WUX203 © 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.
OOB Goals Simplicity Follow the web rules Give the user the right default behavior No additional downloads for user Follow the web rules Use the web deployment/update model Most applications can live within a sandbox
Taking an App Out of Browser Gestures (How) Context menu Application-provided behavior App runs before install User initiates action to trigger Application Types Always connected Always disconnected Occasionally connected
Detaching API Manifest (AppManifest.xaml) Code APIs** Name, title, description Optional icons Code APIs** Detach() method ExecutionState ExecutionStateChanged event model RunningOffline property ** API Names subject to change (pre-release)
Detached State Flow** In-browser Out of browser RunningOnline Detaching Detached (RunningOffline=false) Out of browser Detached (RunningOffline=true)
Application Updates** MIX 09 1/18/2019 Application Updates** Optimized for instant on Background downloading upon identification Next out of browser launch uses new app Event model when update downloaded © 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.
Network Availability Network detection key for scenario (occasionally connected apps) Silverlight 3 new APIs for detection IP address change event Network available property Any interface (no loopback) Best practices Do more than just detect IP change
Interacting with Data Out of browser IsoStore Default limit increase to 25MB upon Detach() Can still prompt for quota increase Storage is shared location for in-browser and out-of-browser – not a new IsoStore OpenFileDialog and SaveFileDialog Interaction with full file system via user action
demo Out of browser MIX 09 1/18/2019 © 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.
Debugging Methods ChildWindow for Exceptions Attach to SLLauncher.exe in beta Post-beta we will launch auto attach in VS** In-browser and out of browser are two instances of the app
Differences from In-browser** Additional key mappings (F keys) No HTML DOM Access MouseWheel XmlHttp Currently no HTML interop Assembly Cache not available
Best Practices Download local data Check RunningOffline for state Don’t trigger more than one HttpWebRequest at a time Keep your code in the XAP Silverlight versions for you If data model changes, require a restart Show UI for major updates
Resources www.microsoft.com/teched www.microsoft.com/learning Sessions On-Demand & Community www.microsoft.com/learning Microsoft Certification & Training Resources http://microsoft.com/technet Resources for IT Professionals http://microsoft.com/msdn Resources for Developers www.microsoft.com/learning Microsoft Certification and Training Resources
Complete an evaluation on CommNet and enter to win!
1/18/2019 4:15 PM © 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. © 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.