Linq和ADO.net的区别

如题,Linq可以被ADO.net代替么??
2024-11-28 21:50:41
推荐回答(1个)
回答(1):

LINQ TO SQL也是基于ADO.NET的,但是,之前我们执行的SQL语句,到LINQ里,是以对象的形式进行感知的,
也就是说,你再也不用担心你的SQL语句有问题而拖到查询分析器里调试了。

LINQ TO SQL把对象和实体做了个映射,这个映射建立在数据库和对象之间。
以前的字段,变成了现在的一个属性,汗。。。我的表达能力有限,简单的说就是这么回事。
当然,只是初步学习了一个入门知识。。。

下面贴代码对比一下LINQ和ADO.NET的操作。

//使用LINQ to SQL 进行查询
CTDataContext dp = new CTDataContext();
var result = from emp in dp.account
where emp.s_id == 1
select emp;
this.GridView1.DataSource = result;//填充
this.GridView1.DataBind();

//使用ADO.NET进行查询
SqlConnection conn = new SqlConnection
(ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString);
SqlDataAdapter da = new SqlDataAdapter("select * from account where s_id = 1", conn);
DataSet ds = new DataSet();
da.Fill(ds);
this.GridView1.DataSource = ds.Tables[0];//填充
this.GridView1.DataBind();

显示的结果是一样的,大概就是这样了。