如何对SQL Server数据访问进行分类?

问题描述:

我们正在撰写这篇关于Web应用程序中数据库访问的文章,并且必须区分数据库访问层的不同类别。如何对SQL Server数据访问进行分类?

所有书籍和PDF给我们只提供信息JDBC或OLEDB。

研究在网络上把我带到访问到Microsoft SQL Server的低谷linq-to-entitieslinq-to-sql通过ADO.Net不能在同一类别把尽可能JDBCOLEDBmiddleware)点。

通过.NET设施(如LINQ2Entities或LINQ2SQL)访问Microsoft SQL Server的准确定义/类别是什么?

ADO.NET是OleDB之后的下一步 - 它绝对与OleDB或ODBC/JDBC属于同一类别。

Linq-to-SQL和Linq-to-Entities更高级 - 它们不能解决低层次的数据访问问题,它们更多的是关于OR映射和提供模型来处理。我会把它们放在与Java世界中的Hibernate类似的类别中。

Marc

+0

这意味着ADO.NET现在会替换OleDB,对吗? – 2009-10-13 14:46:31

+0

这是OleDB之后的下一个开发阶段,是的 - 对于.NET应用程序(托管代码应用程序),ADO.NET是连接到数据库的首选方式 – 2009-10-13 14:53:19

LINQ to SQL和实体框架都适合(在不同程度上)的ORM类别。两者都位于ADO.NET之上,如果没有它,就不能使用。 ADO.NET实质上是OLE-DB的.NET替代品,它本身就是ODBC的替代品。