Tag: linq

将List <List >转换为C#中的List

我有一个List<List> 。 我想将它转换为List ,其中每个int都是唯一的。 我想知道是否有人使用LINQ有一个优雅的解决方案。 我希望能够使用Union方法,但每次都会创建一个新的List 。 所以我想避免做这样的事情: List allInts = new List(); foreach(List list in listOfLists) allInts = new List(allInts.Union(list)); 有什么建议? 谢谢!

Linq联盟用法?

SQL: SELECT date,total_usage_T1 as TotalUsageValue,’T1′ as UsageType FROM TblSayacOkumalari UNION ALL SELECT date,total_usage_T2 as TotalUsageValue,’T2′ as UsageType FROM TblSayacOkumalari 我尝试将其转换为linq IEnumerable sayac_okumalari = entity.TblSayacOkumalari .Select(x => new { x.date, x.total_usage_T1 }) .Union(entity.TblSayacOkumalari.Select(x => new { x.date, x.total_usage_T2 })); 但我不知道如何将’T1′ as UsageType转换’T1′ as UsageType转换为linq。 我的工会使用也是不正确的。 我的表字段如下: | date | total_usage_T1 | total_usage_T2 | | 2010 | […]

为什么Entity Framework 6为简单查找生成复杂的SQL查询?

我有这个LINQ查询 dbContext.Customers.Where(c => c.AssetTag == assetTag).Count(); 要么 (from c in dbContext.Customers where c.AssetTag == assetTag select c).Count(); 生成的SQL是 SELECT [GroupBy1].[A1] AS [C1] FROM ( SELECT COUNT(1) AS [A1] FROM [dbo].[Customer] AS [Extent1] WHERE (([Extent1].[AssetTag] = @p__linq__0) AND ( NOT ([Extent1].[AssetTag] IS NULL OR @p__linq__0 IS NULL))) OR (([Extent1].[AssetTag] IS NULL) AND (@p__linq__0 IS NULL)) ) […]

使用LINQ查找数组中最常见的数字

List a = new List{ 1,1,2,2,3,4,5 }; 使用LINQ最快的方法是什么? 我是LINQ的新手

使用ExpressionVisitor获取所有“where”调用

我有一个查询,像这样: var query = from sessions in dataSet where (names.Contains(sessions.Username)) where (sessions.Login.TimeOfAction == dt) select new { sessions.Username, sessions.Login, sessions.Logout, sessions.Duration }; 我想实现一个ExpressionVisitor来提取where子句作为Lambda,但到目前为止只能使用一个名为’InnermostWhereFinder’的类来获得第一个,该类来自TerraServer Web服务的自定义查询提供程序上的MSDN教程。 它是: internal class InnermostWhereFinder : ExpressionVisitor { private MethodCallExpression innermostWhereExpression; public MethodCallExpression GetInnermostWhere(Expression expression) { Visit(expression); return innermostWhereExpression; } protected override Expression VisitMethodCall(MethodCallExpression expression) { if (expression.Method.Name == “Where”) innermostWhereExpression = […]

如何在Dynamic Linq中使用Enums?

我想在动态LINQ查询中使用枚举。 是否可能,如果,如何? 考虑下面的代码: using System; using System.Collections.Generic; using System.Linq; using System.Linq.Dynamic; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { Room aRoom = new Room() { Name = “a Room” }; Room bRoom = new Room() { Name = “b Room” }; Room cRoom = new Room() { Name = “c Room” }; […]

LINQ一次更新多个元素

是否可以使用LINQ在List中为每个元素设置属性。 例如: var users = from u in context.Users where u.Name == “George” select u; foreach (User us in users){ us.MyProp = false; } 是否可以使其更清洁?

entity framework查询中的user trimstart

我怎样才能使用trimstart所以entity framework会理解该怎么做? 这是我的查询: string number=”123″; Workers.Where(x => x.CompanyId == 8).Where(x => x.Number.TrimStart(‘0’) == number); 如何在没有AsEnumerable的情况下使这个查询工作(公司8中有很多工人)?

Linq to SQL:为什么我收到IDENTITY_INSERT错误?

我正在使用Linq to SQL。 我有一个DataContext,我就是.SubmitChanges()。 插入标识字段时出错: 当IDENTITY_INSERT设置为OFF时,无法在表’Rigs’中为identity列插入显式值。 唯一的标识字段是“ID”,其值为0.它在DBML中定义为: [Column(Storage=”_ID”, AutoSync=AutoSync.OnInsert, DbType=”Int NOT NULL IDENTITY”, IsPrimaryKey=true, IsDbGenerated=true)] 有几个外键,我已经validation它们的值与外表的内容一致。 为什么我会收到此错误? 编辑:这是查询: exec sp_executesql N’INSERT INTO [dbo].[Rigs]([id], [Name], [RAM], [Usage], [MoreInfo], [datetime], [UID]) VALUES (@p0, @p1, @p2, @p3, @p4, @p5, @p6) SELECT [t0].[id], [t0].[OSID], [t0].[Monitors] FROM [dbo].[Rigs] AS [t0] WHERE [t0].[id] = @p7′,N’@p0 int,@p1 varchar(1),@p2 int,@p3 varchar(1),@p4 varchar(1),@p5 datetime,@p6 […]

在WPF应用程序中导致UI内存泄漏的ICommand绑定

我正在构建一个使用LINQ to SQL连接到SQL Server数据库的WPF应用程序。 应用程序的主窗口包含一个包含一系列详细视图的ListView 。 ListView的ItemSource绑定到作为根视图模型上的属性公开的详细视图模型对象的集合。 每个详细视图模型对象组成多个ICommand属性以及公开详细模型对象的属性,该属性又公开UI中显示的各种数据字段。 使用ANTS内存分析器进行分析表明,泄漏的对象是详细模型对象中包含的对象,以及它们绑定到的一些UI类。 以前刷新的这些对象的实例不是垃圾回收。 ANTS有一个工具,允许用户跟踪引用链,以确定保留不需要的内存的原因。 当我使用它时,我发现所有出现的链都有一个ICommand 。 因此,我删除了有问题的ICommand ,发现内存泄漏消失了。 不幸的是,我需要ICommand来实现一些重要的function。 让我感到困惑的是它首先如何引用细节模型对象 – 它们是详细视图模型对象中的两个完全独立的实例变量。 这是详细视图模型对象的构造函数(对RootViewModel的引用用于连接到ICommands的一些方法中的回调。我原先怀疑这可能导致一个循环的引用链,这可能是导致问题,但删除它似乎没有任何影响。) public CarDataViewModel(CarData carDataItem, RootViewModel parentViewModel) { _parentViewModel = parentViewModel; CarDataModel = carDataItem; CompetingCheckboxStatus = CarDataModel.CurrentCar.Competing; AcknowledgeAlarm = new ParameterlessCommand(AcknowledgeAlarmClicked); Acknowledge = new ParameterlessCommand(AcknowledgeClicked); ShowReport = new ParameterlessCommand(ShowReportClicked); Cancel = new ParameterlessCommand(CancelClicked); } 这里是设置绑定的xaml – AcknowledgeAlarm是ICommand,CarDataModel是详细模型对象: […]