导航

Linq to sql

Posted on 2016-03-17 17:48  杨彬Allen  阅读(155)  评论(0编辑  收藏  举报

简介

Linq to sql微软目前已不做更新,但还是可以单独用的。

优点:

1、非常容易搭建,新建->数据->LINQ to SQL Classes后配配环境既搭好了。

2、功能还比较丰富

3、使用便捷,如果用过ORM很容易上手

 

缺点:

1、复杂的sql很难写,且对表中的字段命名规范比较高,否则得像下面这样去写

var query2 = (from a in db.Tb_EP_PO_Requests
                          join b in db.Tb_EP_PO_Details
                          on a.PoId equals b.PoId
                          join c in db.Tb_EP_PO_RecvGoods
                          on new { b.PoId, b.LineNumber } equals new { c.PoId, c.LineNumber }
                          join d in db.Tb_EP_Payment_Details
                          on new { a.PoNumber, c.LineNumber } equals new { PoNumber = d.PayNumber, LineNumber = (int)d.LineNumber }
                          where b.FeeRegion == region && b.FeeMarket == market
                          && b.ItemName == poSubitemName
                          && a.RequestDate >= begin && a.RequestDate < end
                          && b.Status == 0 && b.ApproveStatus == 0 && b.Status_Payment == 4
                          select d.Amount);

 

Linq to sql和EF的区别是

1、Linq to sql只支持mssql

2、Linq to sql的对象和实体表必须是1:1,而EF对象的属性可以同时存在在多个表中(EF更能体现OO思想)

3、Linq to sql已停止更新

 

如果是中小型项目,完全可以采用Linq to sql,开发效率还是很有保障的,比如写写服务这种代码,整体框架的搭建还是很快的。已在项目中使用,好使!!