zoukankan      html  css  js  c++  java
  • LINQ to Entities does not recognize the method 'Int64 ToUnixTime(System.DateTime)' method,and this method cannot be translated into a store expression

    关于在LINQ表达式中出现错误,就是方法不能将时间转成表达式,经过不断的思考,终于明白了转码解决。本人就是想把后台的时间对象转成时间戳然后传给前台调用。

    这样就出错:

     var comments = CommentSrv.GetListByCondition(t => t.ProductId == id //商品评论

                                     && t.Type ==Type

                                     && t.Content != null

                                    && t.Content != " ").OrderByDescending(t => t.CreateDate);
     var product = new {//展示商品的评论内容(包含时间,商品名,评论)
                        data.ID,
                        data.Name,
                        Commnents = comments,
                        CreateDate = t.CreateDate.ToUnixTime()//时间转换
                        };

    失败提示:
    LINQ to Entities does not recognize the method 'Int64 ToUnixTime(System.DateTime)' method, and this method cannot be
    translated into a store expression.

    修改后:

    var comments = CommentSrv.GetListByCondition(t => t.ProductId == id //商品评论

                                     && t.Type ==Type

                                     && t.Content != null

                                    && t.Content != " ").OrderByDescending(t => t.CreateDate)).ToList();//只要修改这里就可以
     var product = new {//展示商品的评论内容(包含时间,商品名,评论)
                        data.ID,
                        data.Name,
                        Commnents = comments,
                        CreateDate = t.CreateDate.ToUnixTime()//时间转换毫秒
                        };

    时间戳转换结果:

    "CreateDate":1336755430000

  • 相关阅读:
    weblogic无需用户名密码启动Server
    中文和unicode互转
    spring集成activeMQ
    jvm分析(MD语法)
    解决java.lang.NoClassDefFoundError: org/apache/log4j/Level
    httpclient 支持代理和http & https
    容器配置jndi Tomcat为例
    java https tomcat 单双认证(含证书生成和代码实现) 原创转载请备注,谢谢O(∩_∩)O
    java Http原生 Get 和Post 支持代理认证
    解决客户端访问https报错
  • 原文地址:https://www.cnblogs.com/janekimyan/p/3496803.html
Copyright © 2011-2022 走看看