We have need to connect to an AS/400 from .NET (C#) and access (read and write) data.
The issue is the data is stored in relational files on the mainframe, not in a DB2 database.
What is the best way to accomplish this? I would love to use an ADO.NET Entity Framework type solution, but I believe the compatible data providers only work with DB2.
There is a DB2 lite offering and I believe it is offered on the Windows and Linux platforms. The iSeries (AS/400) as well as z-Series (mainframe) use the "full version" of DB2 because it is integrated into the operating system. If I were you, I would ask the mainframe guys if they have the .NET ADO.NET driver from IBM and the connection information for you.
IBM has provided a good redbook on the subject of connecting to the AS/400 (i5). Basically you need to make sure you have the licensed product iSeries Access For Windows (5722-XE1) and you need to setup a data provider on the Systemi. The redbook discusses setting the provider up. The resource for 5722-XE1 is found on the IBM website.
If you would like a older example, there is an article on the four hundred guru site.
Hope this helps -- feel free to post if there is additional information you need or if your administrators have questions about the setup. If you need additional info, make sure you post the OS version (like V5R4 or something like that)