Я бы использовал NHibernate
или Enterprise Library
и Data Access Application Block
.
Вот ссылка, где показано, как ее использовать.
Using Microsoft Enterprise Library Data Access Application Block – Part II
И еще один в форме краткого учебника.
Get Started with the Enterprise Library Data Access Application Block
Короче говоря, NHibernate
- это инструмент ORM (Object-Relational Mapping), который позволяет отображать с помощью файлов XML ваши объектно-ориентированные классы на базовые таблицы данных независимо от того, какое хранилище данных вы используете. Достаточно настроить его с помощью строки подключения к вашему хранилищу данных и предоставить ему правильного поставщика данных .NET, чтобы он работал полностью.
С другой стороны, Enterprise Library's Data Access Application Block
является своего рода оберткой над традиционным ADO.NET, чтобы упростить его использование. Вы можете именовать строки подключения и открывать подключения к этим именованным базам данных / строке подключения. Как только вы овладеете объектом Database
этой библиотеки и ее конфигурационными функциями, ничто не сможет помешать вам получить доступ к вашим данным.
Это помогает?
Вам нужны какие-либо дополнительные детали, с которыми я могу вам помочь?
РЕДАКТИРОВАТЬ # 1
Ничто в .NET не будет работать как "запросы чистого SQL", поскольку .NET - это управляемый код. Кроме того, вы должны учитывать издержки соединения и аутентификацию, прежде чем вы сможете выполнять запросы к базе данных.
РЕДАКТИРОВАТЬ # 2
Вот список поддерживаемых баз данных с NHibernate:
Databases supported by NHibernate
Кажется, я не могу легко (быстро) найти список поддерживаемых баз данных с помощью EntLib DAAB, но вот то, с чем я уже работал:
- Oracle 8i, 9i и 10g (пожалуйста, используйте собственный поставщик данных Oracle .NET для повышения производительности и поведения)
- SQL Server 2005/2008
- SQLite
- Microsoft Access
Поддерживаются и многие другие.