asp.net – Linq’包含’查询耗时太长
发布时间:2020-12-16 07:23:37 所属栏目:asp.Net 来源:网络整理
导读:我有这个问题: var newComponents = from ic in importedComponents where !existingComponents.Contains(ic) select ic; importedComponents和existingComponents的类型为List ImportedComponent,并且仅存在于内存中(不依赖于数据上下文).在这种情况下,imp
我有这个问题:
var newComponents = from ic in importedComponents where !existingComponents.Contains(ic) select ic; importedComponents和existingComponents的类型为List< ImportedComponent>,并且仅存在于内存中(不依赖于数据上下文).在这种情况下,importedComponents只有超过6,100个项目,而现有组件有511个项目. 这句话花了太长时间才完成(我不知道多久,我在20分钟后停止了剧本).我尝试了以下但没有提高执行速度: var existingComponentIDs = from ec in existingComponents select ec.ID; var newComponents = from ic in importedComponents where !existingComponentIDs.Contains(ic.ID) select ic; 任何帮助都感激不尽. 解决方法
您可以使用
Except 来获得设置差异:
var existingComponentIDs = existingComponents.Select(c => c.ID); var importedComponentIDs = importedComponents.Select(c => c.ID); var newComponentIDs = importedComponentIDs.Except(existingComponentIDs); var newComponents = from ic in importedComponents join newID in newComponentIDs on ic.ID equals newID select ic; foreach (var c in newComponents) { // insert into database? } Why is LINQ JOIN so much faster than linking with WHERE? 简而言之:Join方法可以设置一个哈希表,用作索引来快速将两个表拉链在一起 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Asp.net core WebApi 使用Swagger生成帮助页实例
- asp-classic – 如何清除所有cookie?
- iis-7.5 – aspnet_compiler无法映射路径’/’
- ASP.NET图表在数字旁边添加百分比
- asp.net – MVC 4导出到CSV – 另存为对话框在Chrome和Fire
- asp.net-mvc – 如何在json post期间发生异常时阻止asp.net
- asp.net-mvc – mvc默认期限后的会话超时(20分钟)
- asp.net-mvc – DataContractJsonSerializer ReadObject Ex
- asp.net-mvc – ASP.net MVC路由参数异常
- ASP.Net MVC 3控制器操作和打开新窗口
推荐文章
站长推荐
- asp.net-mvc – 绑定排除Asp.net MVC不适用于LIN
- asp.net-mvc-3 – @ Html.TextBoxFor文本框在验证
- asp.net – MVC EF Code首先一对一的关系错误
- asp.net – 将MasterPage ImageButton事件传递给
- asp.net-mvc – angular js和asp.net mvc 4示例应
- Asp.Net何时删除过期的缓存项?
- asp.net-mvc – 将参数传递给telerik asp.net mv
- asp.net-mvc – 子文件夹中的控制器
- asp.net-mvc – 已经使用相同的参数类型定义了一
- ASP.NET MVC API 接口验证的示例代码
热点阅读