title: Best practices when communicating with AS400 (IBM i) from .NET
body: <p>I need some help on what's important and best practices when building a .NET based reporting solution on top of an existing AS400 based system. </p>
  
  <ul>
  <li>What's the most suited integration
  technology (ODBC, OLE DB, ADO.NET)
  and does that depend on what version
  of AS400 we're talking about? Is it
  always DB2 databases or does that
  vary to? What other persistency system are usually used?</li>
  <li>Is it possible to call
  programs in the mainframe that has
  logic in them or is preferable to replicate that logic in the .NET layer
  and then call the mainframe DB directly?</li>
  <li>I guess a reporting system should be online and call the mainframe DB directly or are there other ways (for example file export etc.) that would be preferred?</li>
  <li>What technical details are important to find out before starting the project (AS400 version etc.) to eliminate problems. </li>
  </ul>
  
  <p>Basically I'm interested (and will vote up) in all information and experiences from .NET/AS400 projects. I've never done it before and need to know the pitfalls before project start.</p>