Jan 05, 2016
David KlineSoftware Development Engineer in TestMicrosoft Corporation
APP214
What’s New in .NET Compact Framework v3.5
.NET Compact Framework
Key design differencesSize optimized to fit in device ROM image
JIT performance optimized for speed of compilation
Omitted featuresServer functionality/ASP.NET
.NET Remoting
Reflection.Emit
Managed C++, J#
Individual properties, methods and events
Smaller, yet compatible
Key Goals
Productivity of managed code on device projects“You already know how to do it”
Bring strategic new desktop capabilities to device
As small as possibleCurrently 6.2MB (uncompressed)
Ongoing investments in performance50% gain in v2Maintaining performance in v3.5
Developer Productivity
Device Enablement
Size
Performance
Compatibility Binary compatibility (98%) with previous versions Maximize compatibility with .NET Framework
.NET Compact Framework~30% of the surface area in ~10% of the
sizeCopy
Ground-up rewrite Snapshot & Modify
System.Windows.Forms
System.Net
System.IO
System.Resources
System.Threading
System.Xml
System.Data
System.Messaging
System.Text.RegularExpressions
Microsoft.VisualBasic
System.ServiceModel
System.Collections
System.Collections.
Generic
System.Cryptography
System.IO.Ports
System.String
System.Text
System.Globalization
Microsoft.Win32.Registry
System.Web.Services
System.Drawing
Microsoft.DirectX.Direct3DMobile
Execution Engine,JIT, GC, Loader, Assembly Cache
Microsoft.ServiceModel.
Channels.MailTransport
~90% scope of
.NET Framewor
k
Releases and Themes
Bring .NET to devices
Distributed applicationsData applications
PerformanceFeaturesTools
2002 2003 2004 2005 2006 2007
1.0 1.0 SP1
1.0 SP2
2.01.0 SP3
2.0 SP1
3.5
XNA
2.0 SP2
LandscapeAutoscroll
Smartphone
HeadlessWindows CE 4.2Remote Performance Monitor
PerformanceGenericsCOM InteropDirect3D
Windows Communication FoundationLanguage Integrated QueryCLR Profiler
Adoption Highlights
In ROM on >20 million Windows Mobile devices
Windows Mobile 6 has v2 SP1 in ROM
Over 3 million service pack downloads
600,000 .NET Compact Framework developers
400,000 downloads of OpenNETCF.org SmartDevice Framework
Approximately 1000 entries in our app catalog http://blogs.msdn.com/netcfteam/archive/2007/01/30/net-compact-framework-application-and-library-catalog-updated.aspx
Largest deployment: 500,000 devices
United States Census Bureau
Industry partnership lead by Harris Corporation
Includes Accenture, Unisys, Dell, HTC, Sprint, Oracle, Client Network Services and Headstrong
Software built by AvanadeSmart client application built on .NET Compact Framework
Custom Windows Mobile device built by HTC
One of the largest .NET deployments anywhere
500,000 devices to be used by Census field personnel
Field Data Collection Automation
APP216 Building Windows Mobile Applications for Large Scale Deployment
Windows Live Search for Mobile
Demo
APP205 Developing Windows Live Search for Mobile – Lessons Learned
.NET Compact Framework v3.5
Distributed, occasionally-connected applications
Support new language features
New and improved diagnostic tools
Customer feature requests (e.g., sound)
Maintain performance, size and compatibility
Addressing key developer issues
.NET Compact Framework v3.5Supported platforms
Windows CE 4.2 ARM, MIPS II, MIPS IV, SH4, X86 Runtime support
Windows CE 5.0 ARM, MIPS II, MIPS IV, SH4, X86
Includes headless devices
Windows CE 6.0 ARM, MIPS II, MIPS IV, SH4, X86
Includes headless devices
Windows Mobile 2003 ARM Pocket PC
Pocket PC Phone Edition
Windows Mobile 5.0 ARM
Pocket PCPocket PC Phone EditionSmartphone
Windows Mobile 6.0 ARM
ClassicStandardProfessional
Distributed Application Scenarios
Enable developers to more easily write application communicating in transientconnected environment
Allow back-end servers to startcommunications with devices
Allow applications to communicatedevice-to-device
Bring Windows Communication Foundationto the mobile world
Occasional Connectivity
Address and identityMobile device IP address is unstable and not discoverable
Dynamic DNS and IPv6 aren’t broadly deployed
TCP/HTTP are “connect out only” from the device
True P2P not feasible
Quality of service (intermittent connectivity)Applications must explicitly assume offline
Need store-and-forward solution
Fundamental problem in mobile applications
Store and Forward Messaging
Leverage e-mail and its infrastructure to solve addressability and intermittent connectivity problems
Create consistent programming model for Windows Mobile on devices and Windows on PCs
Leverage WCF architectural extensibilityBuild custom store-and-forward messaging transport channel on top of e-mail
Abstract the implementation complexity from app developers
Leverage the ActiveSync “Always-Up-To-Date” feature and Exchange 2007 Web Services
Windows Communication Foundation over e-mail
End-to-End Messaging Solution
Store and Forward MessagingServer
Exchange 2007
ExchangeWeb
Services
Exchange Web
Services Datacenterwithin thecompany
Exchange Web
Services
ActiveSnc
CorporateWi-Fi
network
ActiveSync
Mobileoperatornetwork
Windows Communication Foundation for .NET Compact Framework
Demo
APP325 Windows Communication Foundation for .NET Compact Framework
.NET Language-Integrated Query
General-purpose query processor built right into your favorite programming language
Flexible
Extensible
Familiar SQL-like syntax
Easy to use for increased productivityType safe
Syntax check
IntelliSense support
.NET Language-Integrated Query
Compatible subset of .NET Framework functionality
LINQ to Objects
LINQ to XML
LINQ to DataSet
Less than 200K in size
Not availableLINQ to Entities
Expression trees
Supported features
Language Integrated Query for .NET Compact Framework
Demo
APP324 .NET Compact Framework Language-Integrated Query
Diagnostic Tools
CLR Profiler for .NET Compact FrameworkIn-depth GC heap analysis
Finalizer logging
Interop logging enhancementsSupport for logging marshaled structures
Diagnostic log configuration toolEnable logging without editing the registry
New and improved in v3.5
.NET Compact Framework Diagnostic Tools
Demo
APP322 New and Improved .NET Compact Framework Diagnostic Tools
And More…
Features based on customer requestsCompression
Client-side certificates
Sound
Windows Forms enhancements
Platform identification
Keep the feedback cominghttp://connect.microsoft.com/VisualStudio/Feedback
We’re listening to feedback
Visual Studio "Orcas"
Unit Testing for Devices
Device Emulator 3.0
Security-aware IDE
New features for devices
APP203 Building Mobile Windows Forms Applications: Tips, Tricks and Guidelines
APP207 10 Things I Wish I Knew…Developing for Windows Mobile
APP209 What’s New for Device Developers in Visual Studio “Orcas”
APP302 Accelerating Windows Mobile Line of Business Development
APP303 Adapt Your App: Windows Mobile Applications that Seamlessly Run on Any Device
APP306 What’s New in Device Emulator 3.0
APP402 Mashing Up Virtual Earth and MapPoint in Location Aware Applications for the UMPC
APP404 Unit Testing for Devices in Visual Studio “Orcas”
XNA Game Studio Express
Based on Visual C# Express 2005Lets developers target both Windows and Xbox 360
Content pipeline makes it easy to get rich content into games
XNA FrameworkManaged libraries enable greater productivity
High commonality across the Windows and Xbox 360implementations, dramatically lowers costs
Custom, native implementation of the .NET Compact Framework 2.0 CLR on the Xbox 360
Dream-Build-Play contesthttp://www.dreambuildplay.com
Win an Xbox Live Arcade publishing contract!
Game development for students & hobbyists
Call to Action
Install and use Visual Studio “Orcas” Beta 1.NET Compact Framework v3.5 Beta 1
.NET Compact Framework v2 SP2
Download and use v2 SP2 in Visual Studio 2005http://www.microsoft.com/downloads/details.aspx?FamilyID=aea55f2f-07b5-4a8c-8a44-b4e1b196d5c0&displaylang=en
Send us your feedbackhttp://connect.microsoft.com/VisualStudio/Feedback
While at MEDC.NET Compact Framework sessions
APP206
Panel Discussion with .NET Compact Framework Team, OpenNETCF Smart Device Framework Team and Other Industry Insiders
APP216 Building Windows Mobile Applications for Large Scale Deployment
APP301 .NET Compact Framework Asynchronous Programming Techniques
APP304
Bluetooth Communication in Windows Embedded CE and Windows Mobile
APP305
Building Mobile Applications with the Patterns & Practices Mobile Application Blocks
APP306 .NET Compact Framework Memory Management
APP322 New and Improved .NET Compact Framework Diagnostic Tools
APP323 Real World Testing of Managed Smart Device Applications
APP324 .NET Compact Framework Language-Integrated Query
APP325
Windows Communication Foundation for .NET Compact Framework
APP403
Building High-Performance Apps Using the .NET Compact Framework
While at MEDC.NET Compact Framework labs
HOL301
Building an Application using Windows Communication Foundation (WCF) and Store and Forward Transports in the .NET Compact Framework
HOL302
Improving Application Performance Step-by-Step featuring Diagnostic Tools in.NET Compact Framework 3.5
HOL305
Incorporating COM Objects into Your .NET Compact Framework Application
HOL310
Building a Device Client Application Consuming a Windows Communication Foundation (WCF) Service over HTTP and HTTPS
HOL312 Exploring Compact LINQ
HOL313
Tips, Tricks and Techniques for Debugging .NET Compact Framework Applications
ILL317Building an Application using Windows Communication Foundation (WCF) and Store and Forward Transports in the .NET Compact Framework
Resources
.NET Compact Framework Developer Center http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx
MSDN Forums: Smart Device Developmenthttp://forums.microsoft.com/MSDN/default.aspx?ForumGroupID=11
WebLogs.NET Compact Framework Teamhttp://blogs.msdn.com/netcfteam
David Klinehttp://blogs.msdn.com/davidklinems
Windows Mobile Developer Resource Kit
Case Studieshttp://www.microsoft.com/casestudies/search.aspx?ProTaxID=1714
While You're Here
Fill out your session evaluationEnter to win a Windows Mobile® phone or Zune™
Geek out with a huge rack of serversEnterprise Mobility in Action in the Expo Hall
Go on a dateISV Speed Dating lets you pitch your app to
Mobile Operators and OEMs (May 1 only)
Meet the geeksThe Expert Cabana is packed with MEDC
speakers and MVPs
© 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.