.NET Framework for Devices has given birth to numerous Windows Mobile based Applications. I have recently been interested in the compact framework because I had bought windows mobile based HTC P3300 with a built in GPS. Previously I wrote code for compact framework 2.0. Since everything has gone 3.5 now a days, I began to wonder what is new in 3.5 and how can I take advantage of the new features. I am going to write down the my finding below.
By the way, this probably is old news to some of you ... so you might not want to continue reading.
First the bad news: No WPF
I was expecting WPF to be present in CF3.5 but there was no WPF, which is quite sad. Instead there were some extremely minor improvements to the windows forms area. However don’t be sad, because Silverlight is coming with support for Windows Mobiles and even Nokia phones.
Good News: Windows Communication Foundation is here
For service based and other communications WCF is present in 3.5 and the client services in the device can connect to the WCF service running in the PC. However the service runtime layer is not present in the compact framework. For ServiceMode contracts you will need to generate a proxy using the NetCFSvcUtil which is present in the Power Toys for .NET Compact Framework. It also supports a subset for WS-Security 1.0 specification is supported. For more on this topic please look up Messaging in the .NET Compact Framework at MSDN.
Second good news: LINQ is supported
Oh yes, … now you can write sql like strange constructs in your CF code with Linq for your device. However for XLinq XPath is not supported.
If you have hardware support then the Soundplayer can play multiple sounds. See this article in MSDN for details. Unfortunately support for compressed sound is not there yet. You can get OS platform information on WinCEPlatform Enumeration class at Microsoft.WindowsCE.Forms namespace. Some other improvement were done in Logging, GAC and other areas. For more on this please read What's New in the .NET Compact Framework Version 3.5 at MSDN. You can find CF samples at this article ...NET Compact Framework Samples.
For those of you who were hoping make nice WPF apps for CF start using Silverlight.