繁体   English   中英

LinqToSql和实体框架还是ADO.Net?

[英]LinqToSql and Entity Framework or ADO.Net?

过去几年,我在.Net项目中一直使用ADO.Net。 现在,我开始使用Linq2Sql和Entity Framework。

使用ADO.Net应用程序时,我的客户端应在其系统中具有SQL Server来访问数据库文件。

但是有人告诉我Linq2Sql和Entity Framework不需要客户端上的SQL Server,它只需要.mdf文件即可访问数据库。

因为在LinqToSql中,我们将连接指定为.mdf文件的路径

DataContext dc= new DataContext("path to database file");

是真的吗

请给我解释所有的事情。

我非常怀疑您可以在不使用SQL Server的情况下直接使用.mdf文件,因为

  1. 数据库事务不只是可以直接对.mdf文件进行文件读取和写入。

  2. LINQ to SQL查询首先转换为SQL,然后执行。 没有SQL Server引擎,这些SQL查询将如何解释

它与ADO.net或LINQ2SQL或EntityFramework无关。 它与您使用的数据库版本有关。 而且,我认为如果不通过上述任何一种数据访问技术安装SQL数据库服务器,就无法使用.mdf文件。

可能是您指的是SQL Compact Edition( .sdf )。 您可以在不安装SQL Server的情况下使用它。 (您也可以将ADO.net连接到.sdf数据库文件)

myConnection = new SqlCeConnection("Data Source=\\Mobile\\Northwind.sdf;");
myConnection.Open();

[SQL Compact Edition]

您正在考虑在SQL Server 2012中将User Instances替换为LocalDB 。这与Linq to SQL或Entity Framework无关。 所有这些选项都需要在客户端计算机上安装SQL Server。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM