Linq语法学习
关键词:
select
from
where
in
into
join
on
equals
orderby
descending
thenby
Table<TEntity>
DefaultIfEmpty();
submitChanges();
DeleteOnSubmit();
DeleteAllOnSubmit();
InsertAllOnSubmit();
常用1
/// <summary>报销单是否被增值税引用
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public bool IsRefWithholding(string id)
{
var isRefWithholding = (from wh in _dataContext.Withholdings
join clp in _dataContext.ClaimSheetBaseInProjects on wh.ClaimSheetBaseInProjectId equals clp.Id
join cl in _dataContext.ClaimSheetBases on clp.bxdId equals cl.Id
where cl.Id == id
select wh).Count() > ;
return isRefWithholding;
}
修改用例:
public void UpdateClaimSheetBaseForFrozen(ClaimSheetBaseDto item)
{
_dataContext.CommandTimeout = ;
if (item != null)
{
var claimSheetBase = _dataContext.ClaimSheetBases.Single(a => a.Id.Equals(item.Id));
claimSheetBase.IsFrozen = item.IsFrozen;
claimSheetBase.FrozenCode = item.FrozenCode;
_dataContext.SubmitChanges();
}
}
删除用例:
public void DelectProjectPay(ClaimSheetBaseDto item)
{
if (item.IsMulPay.Equals(true))
{ var projectPay = _dataContext.ProjectPay.Where(o => o.ClaimSheetBaseId == item.Id);
if (item.PaymentByReverseDto != null)
{
_dataContext.ProjectPay.DeleteAllOnSubmit(projectPay);
}
}
}
增加用例:
/// <summary>添加附件
/// 先删除后增加
/// </summary>
/// <param name="claimSheetBaseId"></param>
/// <param name="?"></param>
/// <returns></returns>
public bool AddAttachmentWB(ClaimSheetBaseDto item)
{
if (item.AttachmentDtos != null)
{
var attachments = _dataContext.AttachmentWB.Where(a => a.ClaimSheetBaseId.Equals(item.Id));
if (attachments != null && attachments.Count() > )
{
_dataContext.AttachmentWB.DeleteAllOnSubmit(attachments);
}
var attachmentDtos = new List<AttachmentWB>();
foreach (var attachment in item.AttachmentDtos)
{
attachmentDtos.Add(RePackAttachment(attachment));
} _dataContext.AttachmentWB.InsertAllOnSubmit(attachmentDtos);
}
_dataContext.SubmitChanges();
return true; }
Linq语法学习的更多相关文章
- Linq语法学习_增删篇。
关键词: select from where in into join on equals orderby descending thenby Table<TEntity> Default ...
- Linq语法详细
闲言碎语 近期比较忙,但还是想写点什么,就分享一些基础的知识给大家看吧,希望能帮助一些linq新手,如果有其它疑问,可以进右上角群,进行交流探讨,谢谢. 开门见山 读这篇文章之前,我先说下,每一种搜索 ...
- Linq语法
希望能帮助一些linq新手. 开门见山 读这篇文章之前,我先说下,每一种搜索结果集,我都以三种方式变现出来,为啦更好的理解,希望不要嫌我啰嗦. 1.简单的linq语法 //1 var ss = fro ...
- Linq语法常见普通语法
闲言碎语 近期比较忙,但还是想写点什么,就分享一些基础的知识给大家看吧,希望能帮助一些linq新手,如果有其它疑问,可以进右上角群,进行交流探讨,谢谢. 开门见山 读这篇文章之前,我先说下,每一种搜索 ...
- 常用linq语法
1.简单的linq语法 var ss = from r in db.Am_recProScheme select r; var ss1 = db.Am_recProScheme; string sss ...
- Golang 语法学习笔记
Golang 语法学习笔记 包.变量和函数. 包 每个 Go 程序都是由包组成的. 程序运行的入口是包 main. 包名与导入路径的最后一个目录一致."math/rand" 包由 ...
- Swift高级语法学习总结(转)
Swift高级语法学习总结 1.函数 1.1 func funcNmae()->(){} 这样就定义了一个函数,它的参数为空,返回值为空,如果有参数和返回值直接写在两个括号里就可以了 1.2 参 ...
- Swift基础语法学习总结(转)
Swift基础语法学习总结 1.基础 1.1) swift还是使用// 和/* */ 来注释,并且/* */允许多行注释. 1.2) swift使用print和println打印,它的传参是一个泛型 ...
- Linq语法详细(转)
原文地址:http://www.cnblogs.com/knowledgesea/p/3897665.html 开门见山 读这篇文章之前,我先说下,每一种搜索结果集,我都以三种方式变现出来,为啦更好的 ...
随机推荐
- Android消息处理机制(Handler、Looper、MessageQueue与Message)
Android是消息驱动的,实现消息驱动有几个要素: 消息的表示:Message 消息队列:MessageQueue 消息循环,用于循环取出消息进行处理:Looper 消息处理,消息循环从消息队列中取 ...
- 高级SQL运用
一:什么是数据库设计? 数据库设计就是将数据库中的数据实体以及这些数据实体之间的关系,进行规范和结构化的过程. 二:为什么要实施数据库设计? 1:良好的数据库设计可以有效的解决数据冗余的问题 2:效率 ...
- WCF学习之旅—TcpTrace工具(二十五)
前面的几篇文章,我们学习了怎么开发WCF应用程序与服务,也学习了如何进行WCF的配置.对于Web Service与WCF服务应用,服务端与客户端的通信是通过收发SOAP Message进行,我们如何有 ...
- SQL语句优化
(1) 选择最有效率的表名顺序 ( 只在基于规则的优化器中有效 ) : ORACLE 的解析器按照从右到左的顺序处理 FROM 子句中的表名, FROM 子句中写在最后的表 ( 基础表dri ...
- JavaScript中尺寸、坐标
测试环境是IE8,Chrome38,Firefox40,下面是全局通用脚本打印代码 /** * 打印 */ function write(str) { document.write(str + '&l ...
- Notepad2替代系统自带的记事本
事情是这样的,平时我经常把一些文字复制到记事本中编辑好了再复制到目标位置,可以在系统自带的记事本中替换删除一些内容,记事本小巧,占用很少的资源,我很喜欢:但今天复制的内容中有很多数字和一些我不想要的内 ...
- React学习笔记。
有段时间没写博客了,最近这段时间有点说不出的苦,虽然说年轻的时候该多出去经历些事,但每次找工作东跑西跑,坐公交坐地铁浪费了我太多时间,我感觉到这是一种浪费,对生命的浪费.所以很想尽快找到一份工作,去努 ...
- React.js深入学习详细解析
今天,继续深入学习react.js. 目录: 一.JSX介绍 二.React组件生命周期详解 三.属性.状态的含义和用法 四.React中事件的用法 五.组件的协同使用 六.React中的双向绑定 ...
- Python基础(一)
本章内容: Python 的种类 Python 的环境 Python 入门(解释器.编码.pyc文件.脚步传入参数.变量.输入.流程控制与缩进.while循环) 练习题 Python 的种类 Cpyt ...
- c#编程基础之枚举
枚举的意义就在于限制变量取值范围. 当可以确定的几种取值时才可以用. 如果输入一个字符串需要进行判断是否是我们需要的字符串时,则一般需要这样写: using System; using System. ...