C#中LINQ to Entities进行日期比较,使用-运算符,比如:

list.FirstOrDefault(s =>(DateTime.Now - s.Updated).TotalHours < 12);

运行后会报下面异常:

DbArithmeticExpression 参数必须具有数值通用类型

解决办法是使用Entity Framework提供的相关方法:

list.FirstOrDefault(s => EntityFunctions.DiffHours(DateTime.Now,s.Updated) < 12);

下面是又一实例:

try

{

// on aa.ddbh + aa.lcmc equals bb.ddbh + bb.lcmc(只能字符与字符相加,数字与数字相加)

var cx_ddxx_ll = from aa in sjklj.sc_llddxx.Where(aa => aa.yq.HasValue == false)

join bb in sjklj.sc_ddxx.Where(bb => bb.czzt == "完工" && bb.yq.HasValue == false)

on aa.ddbh + aa.lcmc equals bb.ddbh + bb.lcmc

select new

{

id_ll = aa.ID,

ID = bb.ID,//ddxx没有设置延期,而且已经完工

//awg=aa.wgrq,

//bwg=bb.wgrq,

yq =System.Data.Objects.EntityFunctions.DiffDays(bb.wgrq,aa.wgrq).Value,

czzt = System.Data.Objects.EntityFunctions.DiffDays(bb.wgrq,aa.wgrq).Value > 0 ? "延期" : (System.Data.Objects.EntityFunctions.DiffDays(bb.wgrq, aa.wgrq).Value == 0 ? "完工" : "提前")

};

this.gv_scjh.AutoGenerateColumns = true;

this.gv_scjh.DataSource = cx_ddxx_ll;

this.gv_scjh.DataBind();

this.Lbl_ts.Text = cx_ddxx_ll.Count().ToString();

return;

}

catch(Exception err)

{

this.Lbl_ts.Text = err.Message;

return;

}

DbArithmeticExpression 参数必须具有数值通用类型问题的解决的更多相关文章

  1. 微信h5支付出现“商家参数格式有误,请联系商家解决”

    在浏览器进行微信h5支付时出现:

  2. JVM组成、GC回收机制、算法、JVM常见启动参数、JAVA出现OOM,如何解决、tomcat优化方法

    JVM组成.GC回收机制.算法.JVM常见启动参数.JAVA出现OOM,如何解决.tomcat优化方法

  3. ibernate学习笔记5---实体类或属性名与数据库关键字冲突、hql命名参数、hql实现通用分页

    一.实体类或属性名与数据库关键字冲突问题1.实体类名与数据库中的关键字冲突比如:实体表User与oracle中的系统表冲突解决方式1:在xml中添加table属性,指定表名,使其不与name默认相等 ...

  4. springboot+aop+自定义注解,打造通用的全局异常处理和参数校验切面(通用版)

    一.引入相应的maven依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifa ...

  5. Nginx gzip参数详解及常见问题(已解决)

    1.Nginx gzip功能 Nginx实现资源压缩的原理是通过ngx_http_gzip_module模块拦截请求,并对需要做gzip的类型做gzip,ngx_http_gzip_module是Ng ...

  6. [JavaEE]Get请求URI中带的中文参数在服务端乱码问题的解决方法

    在Get请求中,如果请求参数中带有中文,如 http://localhost:8080/DinnerParty/shop/search?query=多伦多, 在服务端拿到的是乱码. 这是因为客户端提交 ...

  7. asp.net 回发或回调参数无效的各种情况分析及解决办法

    昨天,在实现级联菜单的时候,突然出现一下错误: 回发或回调参数无效.在配置中使用 <pages enableEventValidation="true"/> 或在页面中 ...

  8. asp.net中URL参数传值中文乱码的三种解决办法

    在做Asp.Net开发的时候,参数传递中文时,经常会遇到页面乱码的问题,下面是在网上收集的相关资料,请大家参考: 解决的方法一般有3种: 1.设置web.config文件 <system.web ...

  9. url 传参数时出现中文乱码该怎么解决

    一般出现乱码都是在js裏面跳转到哪个类 然後得到这个参数的时候中文乱码,有一个非常实用的办法,在js你可以这样写:var url=........;url=encodeURI(url); url=en ...

随机推荐

  1. OGG 18.1 for mysql远程捕获测试

    Ogg18.1 remote capture要求mysql为5.7版本,只能从linux远程捕获mysql on windows or linux,且不支持DDL捕获.支持远程mysql为commun ...

  2. Delphi的TService 服务路径获取 Dll中获取文件路径

    研究delphi服务的路径,试了好几个方法 ,都没取出来,最后发现,要采用取DLL路径的方法 //一.获取Dll自身路径 //1)方法一: Function GetDllPath(sDllName:s ...

  3. [转]SQL中 OVER(PARTITION BY) 取上一条,下一条等

    OVER(PARTITION BY)函数介绍 开窗函数               Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个组返 ...

  4. EDK II之Secure Boot简述

    密钥对:公钥分发,私钥自留.常见的公钥格式:cer/der,常见的私钥格式:pfx. BIOS中Secure Boot的原理:把公钥包在code里面,当使用gBS->LoadImage()去加载 ...

  5. MSSQL 漏洞利用与提权

    1.SA口令的获取 webshell或源代码的获取 源代码泄露 嗅探(用CAIN等工具嗅探1433数据库端口) 口令暴力破解 2.常见SQL server 提权命令 查看数据库的版本(select @ ...

  6. 清除本地SVN信息

    C:\Documents and Settings\yangxf\Application Data\Subversion\auth 这个目录下删除svn文件夹即可

  7. P1659 [国家集训队]拉拉队排练

    思路 求出cnt和len之后,直接乘起来即可 代码 #include <cstdio> #include <algorithm> #include <cstring> ...

  8. js form表单的校验

    if(!$("#form").validate().form()){ return false;} <元素 class="required">< ...

  9. 数据类型(data type)

    基本数据类型(primitive data type):字符型(2个字节),布尔型(一位),byte(1个字节),short(两个字节),int(4个字节),long(8个字节),float(2个字节 ...

  10. 区块链 编译android geth 填坑记录 ubuntu

    下载geth 源码  直接 make android 下载android ndk sdk 配置环境变量cd 安装golang  设置环境变量 发现没有gomobile命令 按照wiki方法 执行安装g ...