title: Best way to manage network state in Windows Mobile
body: <p>I have a .NET Compact Framework 3.5 program that is used as a 'Occasionally Connected' line of business (LOB) application.  If it can see an online webservice, it will use that for data access, but if network connection is lost it will use a local cache.  </p>
  
  <p>What is the best way to handle all of the connection options and state changes?</p>
  
  <ul>
  <li>OpenNetCF's ConnectionManager class?</li>
  <li>Microsoft.WindowsBile.State.SystemState?</li>
  <li>API calls?</li>
  </ul>
  
  <p>How do you get it to understand the difference between WiFi, Cradle, and GPRS and use the best method available? </p>
  
  <p>Anyone have any guidance on this?</p>