首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >LINQ到实体(等待操作超时)

LINQ到实体(等待操作超时)
EN

Stack Overflow用户
提问于 2018-08-24 09:18:15
回答 1查看 1.3K关注 0票数 1

我想在这里找到一个查询的帮助。我在我的ASP.NET MVC项目中使用实体框架和SQL。有成型机的记录。每个记录都有名称,类似于"156812 NameOfParameter“,其中的数字是成型机的生产编号,名称是一个参数名、date。成型机的每一个周期都会创建一组具有相同日期的记录。但并不是所有的参数都在这组记录中。这意味着缺失参数的值与第一条记录的值相同,与旧日期和名称相同,如“%NameOf参量”。

我的目标是整理造型机周期的机箱清单。它意味着具有相同日期和时间的参数列表(没有毫米波),并填充所有缺失的值。

来自特定成型机数据库的数据集和从->到的数据集

代码语言:javascript
运行
复制
var lisData = GetSet().Where(t => t.Name.Contains(cisloLisu));
            if (request.DateFrom.HasValue && request.DateTo.HasValue)
            lisData= lisData.Where(t => t.SampleDateTime >= request.DateFrom.Value && t.SampleDateTime <= request.DateTo.Value);

1)按日期和时间分组(无milisecunde)

代码语言:javascript
运行
复制
            var set =
            from tag in lisData
            group tag by DbFunctions.CreateDateTime(
                tag.SampleDateTime.Year,
                tag.SampleDateTime.Month,
                tag.SampleDateTime.Day,
                tag.SampleDateTime.Hour,
                tag.SampleDateTime.Minute,
                tag.SampleDateTime.Second)
            into zdvih
            select zdvih;

现在我有了IQueryble<IGrouping<DateTime?, HistDataView>>对象。

2)从这个对象出发,我需要做模塑周期的列表

代码语言:javascript
运行
复制
      var set2 =
            from zdvih in set
            let wz = 
                zdvih.FirstOrDefault(t => t.Name.Contains("Cislo nastroje")) ??
                lisData.FirstOrDefault(t => t.SampleDateTime < zdvih.Key && t.Name.Contains("Cislo nastroje"))
            let snr =
                zdvih.FirstOrDefault(t => t.Name.Contains("Cislo dilu")) ??
                lisData.FirstOrDefault(t => t.SampleDateTime < zdvih.Key && t.Name.Contains("Cislo dilu"))               
            select new ZdvihView()
            {
                Datum = zdvih.Key,
                CisloNastroje = wz.Value,
                CisloDilu = snr.Value,
            };

的问题是我不知道为什么要花那么多时间。即使我只看了最后一个小时。我几乎总是得到错误“等待操作超时”

代码语言:javascript
运行
复制
Execution Timeout Expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

谢谢你的帮助

EN

回答 1

Stack Overflow用户

发布于 2018-08-25 05:13:01

使用默认Server探查器查看已翻译和执行的TSQL查询。翻译后的TSQL查询可能要花费太多的时间来执行。如果不使用linq分析器(如Linq )来分析您的查询并找到瓶颈。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52001240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档