Andrew Arnott

Principal Software Engineer, Visual Studio Platform

Principal Software Engineer and OSS contributor. Visual Studio Platform.

Post by this author

XmlSerializer compatibility between NetCF and the desktop

The XmlSerializer found in the .NET Compact Framework has a very different implementation than the one found in the full .NET Framework.  The reasons for the differences include size and performance constraints that make the desktop's XmlSerializer inappropriate for devices.  As a result of the different implementation, there are ...

Using the XmlSerializer as an XmlObjectSerializer with WCF

The Windows Communication Foundation introduced the new DataContractSerializer to replace the XmlSerializer in many scenarios.  The DataContractSerializer is faster than the XmlSerializer, but has certain limitations.  For example it does not support serializing an object's members as XML attributes.  When you write a WCF client that calls ...

.NET Compact Framework 3.5 Power Toys RTW

The .NET Compact Framework 3.5 Power Toys have been released.  You can download them from here.Tools included in this package: Remote Performance Monitor and GC Heap Viewer – Provides real time counter data (ranging from Garbage Collector activity to type loading info) on a running NETCF application. The GC Heap Viewer feature ...

My favorite Live Writer plug-ins

Disclaimer: some or all of these plug-ins are not Microsoft created or endorsed, and my pose a security risk by installing them without verifying their source...

Provisioning smart devices: an introduction

A lot of questions on the MSDN forums center around how to customize a device or an app to prefer a specific network connection over another.  The correct way to accomplish this is by "provisioning" the device.  In fact a great many aspects of the device and the applications on it can be configured through 'provisioning' the device.&...

Why .NET Compact Framework fails to call some HTTPS web servers

A bug was discovered recently in the .NET Compact Framework version 2.0 (SP2 and earlier) and 3.5 that causes HttpWebRequest's directed at some HTTPS servers to fail with this error: (for web services) System.Net.WebException: Unable to read data from the transport connection. ---> System.Net.Sockets.SocketException: Unknown error (0x0...

Trying out the iPhone

So I had the opportunity to try out the iPhone for a day.  Overall I was impressed, but there were some very basic features missing from many of the otherwise killer apps that I would greatly miss if I was to use the iPhone as my primary PDA and phone.  Here is a brief summary:Then of course there's the closed platform problem, and I...

Workaround for XmlSerializer T[] and List bug

The XmlSerializer in NetCF 2.0 has a bug where if a single serialization requires reflecting into types that use a mixture of Collection<T>-like types for the same T the XmlSerializer will throw an exception.  Here an example where CF 2.0 would crash: This type would fail to serialize under NetCF 2.0 because T = string would ...

What do you think of the new WCF ‘Store and forward’ Mail Transport?

With the .NET Compact Framework 3.5 release which comes with Visual Studio 2008, a new Windows Communication Foundation transport is introduced that uses email as the communication mechanism. Others have already blogged about this new transport including Roman Batoukov and David Kline. I'd like to take a poll of the audience to see how ...

Why wait for a Zune Phone? Smartphones are here now!

The iPhone was a hit, and people look to Microsoft to produce a ZunePhone in some future version of their Zune music player.  But I ask you, "Why?!"  What you may not be aware of is that Windows Smartphones already do everything that we hope ZunePhone will do.  Just check out this feature list...