• 关键词:

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语法学习_增删篇。的更多相关文章

  1. labview学习_入门篇(一)

    写在前面的话: 在上大学的时候,实验室的老师推荐用labview工具编写上位机软件,当时不想用labview,感觉不写代码心里不踏实,后来用vb和matalb开发了上位机软件.但现在由于部门的几款工具 ...

  2. Linq语法学习

    关键词: select from where in into join on equals orderby descending DefaultIfEmpty() thenby submitChang ...

  3. verilog入门语法学习-第1篇

    1. 如何观察被测模块的响应: 在initial 块中,用系统任务$time 和 $monitor $time 返回当前的仿真时刻 $monitor 只要在其变量列表中有某一个或某几个变 量值发生变化 ...

  4. Linq语法详细

    闲言碎语 近期比较忙,但还是想写点什么,就分享一些基础的知识给大家看吧,希望能帮助一些linq新手,如果有其它疑问,可以进右上角群,进行交流探讨,谢谢. 开门见山 读这篇文章之前,我先说下,每一种搜索 ...

  5. PHP学习笔记 - 入门篇(5)

    PHP学习笔记 - 入门篇(5) 语言结构语句 顺序结构 eg: <?php $shoesPrice = 49; //鞋子单价 $shoesNum = 1; //鞋子数量 $shoesMoney ...

  6. Linq语法

    希望能帮助一些linq新手. 开门见山 读这篇文章之前,我先说下,每一种搜索结果集,我都以三种方式变现出来,为啦更好的理解,希望不要嫌我啰嗦. 1.简单的linq语法 //1 var ss = fro ...

  7. Linq语法常见普通语法

    闲言碎语 近期比较忙,但还是想写点什么,就分享一些基础的知识给大家看吧,希望能帮助一些linq新手,如果有其它疑问,可以进右上角群,进行交流探讨,谢谢. 开门见山 读这篇文章之前,我先说下,每一种搜索 ...

  8. Golang 语法学习笔记

    Golang 语法学习笔记 包.变量和函数. 包 每个 Go 程序都是由包组成的. 程序运行的入口是包 main. 包名与导入路径的最后一个目录一致."math/rand" 包由 ...

  9. 一步步学习javascript基础篇(3):Object、Function等引用类型

    我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...

随机推荐

  1. Process打开文件

    引用:using System.Diagnostics; 打开文件夹: System.Diagnostics.Process.Start(FilePath); 打开文件夹中某个文件: System.D ...

  2. 日期组件wdatepicker

    导入WdataPicker文件包到项目的js文件夹下: 在用户管理中的添加.编辑jsp页面对生日表单项引入日期组件: <script type="text/javascript&quo ...

  3. Invalidate()这个函数有什么用?

    c++中的这个函数,一会是刷新窗口的作用,一会是使区域无效.我搞不懂这个函数究竟是有什么作用?谢谢赐教. void Invalidate( BOOL bErase = TRUE ); 该函数的作用是使 ...

  4. 51Nod - 1154 回文串划分(最少回文串dp)

    回文串划分 有一个字符串S,求S最少可以被划分为多少个回文串. 例如:abbaabaa,有多种划分方式.   a|bb|aabaa - 3 个回文串 a|bb|a|aba|a - 5 个回文串 a|b ...

  5. MySQL数据库基础详解(非原创)

    文章大纲 一.数据库简介二.Mysql数据库简介三.Mysql安装与服务启动(Windows版本)四.Mysql图形化工具五.Mysql存储引擎精讲六.Mysql数据类型介绍七.Mysql主要专业名称 ...

  6. apply的使用技巧

    1.什么是apply?他和call有什么区别? apply:方法能劫持另外一个对象的方法,继承另外一个对象的属性. Function.apply(obj,args)方法能接收两个参数 obj:这个对象 ...

  7. python列表逆序三种方法

    栗子: # 题目:将一个数组逆序输出. # # 程序分析:用第一个与最后一个交换. import random list =[random.randint(0,100) for _ in range( ...

  8. window安装android打包环境

    1.下载jdkhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html下载:jdk-8u1 ...

  9. Selenium IDE + Firefox

    又掉进了同一个坑了,最新firefox版本和selenium ide不兼容,工具栏愣是找不到selenium ide的button,换成firefox5.0就好了  selenium用的版本是2.5. ...

  10. The new week-学习Python-数据类型

    记录自学Python心得 之前有一段时间的JAVA自学,但最终以“无目标”的状态下被懒散驱散了动力,此为前提 Python的历程就不细细说道了,蛮有趣的 一般大家都是学习的CPython,速度较快(这 ...