A number of BizTalk RFID Mobile developers have asked us about support for .net CF 3.5 in BizTalk RFID Mobile.  This post seeks to address this issue and provides information to enable .net 3.5 CF based applications to work with the BizTalk RFID Mobile platform.

The BizTalk RFID Mobile platform itself is a .net CF 2.0 based platform. Hence, the minimum requirement is a device that has .net CF 2.0 loaded. However, with .net CF 3.5 being the latest version of the compact framework, how do applications work with BizTalk Mobile platform and providers that could have been built with potentially different .net CF versions?

Permutations to consider:-

1) Provider built for .net CF 3.5

Mobile Application Target 2.0
Provider Target 3.5
BizTalk Mobile Platform 2.0

2) App and provider built for .net CF 3.5

Mobile Application Target 3.5
Provider Target 3.5
BizTalk Mobile Platform 2.0

3) Only app is built for .net CF 3.5

Mobile Application Target 3.5
Provider Target 2.0
BizTalk Mobile Platform 2.0

In scenario 1), let us say the application has been built for .net CF 2.0 and the provider is built for .net CF 3.5. Since the BizTalk RFID platform and provider are executing in the application context, the application developer is required to include a configuration file that sets the execution environment to 3.5. Please see http://msdn.microsoft.com/en-us/library/d5cd9b2c.aspx for how to do this. If you are running a provider that is built for .net 3.5 CF, you are required to provide this configuration file for the management app and the read tags app that ship with BizTalk RFID Mobile. For example, for the management app, you would include managementapp.exe.config that would look thus

    <supportedRuntime version="v3.5.7283"/>

To get the supportedRuntime version, please follow the steps in the link above.

For scenario 2) there is no additional steps required, since the application and the provider are .net CF 3.5 based.

For scenario 3), if you are building an application that is .net CF 3.5 based, a configuration file is not required as the native target for the application is .net CF 3.5.