linq ado.net 哪个好
答案:2 悬赏:30 手机版
解决时间 2021-02-06 10:13
- 提问者网友:鐵馬踏冰河
- 2021-02-05 17:17
linq ado.net 哪个好
最佳答案
- 五星知识达人网友:罪歌
- 2021-02-05 18:18
linq包括好多的,估计你说的是linq to sql,以下的linq 都代表linq to sql 吧
linq 简单, 但是你要理解一些概念,ORM,拉姆达表达式,委托,泛型,表达式树
ado.net 效率更高效一点,但是麻烦,会有大量重复的代码编写.
linq是提供了直接调用存储过程和sql语句调用的接口的,所以比较好的做法是使用linq,然后有特殊需求的写存储过程,然后用linq调用,或者在linq 里直接写sql语句, 基本所有的ORM框架都有这样的接口的哦
其实linq最强大的不是操作数据库, 你可以参考linq to object,linq to xml 等等,这才是linq牛X的地方
linq 简单, 但是你要理解一些概念,ORM,拉姆达表达式,委托,泛型,表达式树
ado.net 效率更高效一点,但是麻烦,会有大量重复的代码编写.
linq是提供了直接调用存储过程和sql语句调用的接口的,所以比较好的做法是使用linq,然后有特殊需求的写存储过程,然后用linq调用,或者在linq 里直接写sql语句, 基本所有的ORM框架都有这样的接口的哦
其实linq最强大的不是操作数据库, 你可以参考linq to object,linq to xml 等等,这才是linq牛X的地方
全部回答
- 1楼网友:空山清雨
- 2021-02-05 19:29
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();
显示的结果是一样的,大概就是这样了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯