【发布时间】:2016-07-18 19:55:00
【问题描述】:
我对 .NET Framework 的数据访问技术感到困惑。
对吗,.NET 本机只支持 SQL-Databases,提供 ADO.NET?还有其他访问关系数据库的原生方式吗?
NoSQL-Databes 只能通过社区开发的扩展来支持,比如 MongoDB C# 驱动程序?
【问题讨论】:
我对 .NET Framework 的数据访问技术感到困惑。
对吗,.NET 本机只支持 SQL-Databases,提供 ADO.NET?还有其他访问关系数据库的原生方式吗?
NoSQL-Databes 只能通过社区开发的扩展来支持,比如 MongoDB C# 驱动程序?
【问题讨论】:
ADO.NET 是一种仅用于访问关系数据库的技术。不支持任何非SQL查询的数据库。
有一些 NoSQL 数据库(如 CouchDB)可以通过 Web 服务访问,.NET 框架可以在没有 3rd 方库的情况下处理这些数据库。但即使对于 CouchDB,我也建议您使用 the SharpCouch utility class,这样更容易使用。
理论上,您可以使用纯网络套接字访问任何数据库(SQL 或非 SQL)。数据库不是黑魔法。当您获得数据库在线协议的文档时,您可以自己实现该协议。但是,当您可以下载已经工作的数据库驱动程序时,为什么还要重新发明轮子呢?
【讨论】:
NosDB (An Open Source NoSQL Database) 提供ADO.NET support,如果对您有帮助的话
来自 ADO.NET 集成页面
通过使用 NosDB ADO.NET 提供程序,您可以非常轻松地将现有的关系数据库访问代码迁移到 NosDB。此外,您可以继续在您的应用程序中使用您最喜欢的第三方工具和控件,因为它们也能够通过 ADO.NET 访问 NosDB 数据库。
【讨论】: