Tag: linq

Find()和First()抛出exception,如何返回null?

有没有一个linq lambdasearch方法返回null,而不是抛出一个exception时,search列表? 我目前的解决scheme是这样的:(避免被抛出exception) if (list.Exists(x => x.Foo == Foo)) { var listItem = list.Find(x => x.Foo == Foo); } 重复这个expression只是感觉不对。 就像是 … var listItem = list.Find(x => x.Foo == Foo); if (listItem != null) { //Do stuff } …对我感觉更好。 还是只是我? 你对这个有更好的方法吗? (解决scheme不必返回null,只是一个更好的解决scheme是好的)

linq查询从对象列表返回不同的字段值

class obj { int typeID; //10 types 0-9 string uniqueString; //this is unique } 假设有100个obj元素的列表,但只有10个唯一的typeID。 有没有可能写一个LINQ查询从objs列表返回10个唯一的整数?

foreach + break vs linq FirstOrDefault性能差异

我有两个类执行date范围数据提取特定的日子。 public class IterationLookup<TItem> { private IList<Item> items = null; public IterationLookup(IEnumerable<TItem> items, Func<TItem, TKey> keySelector) { this.items = items.OrderByDescending(keySelector).ToList(); } public TItem GetItem(DateTime day) { foreach(TItem i in this.items) { if (i.IsWithinRange(day)) { return i; } } return null; } } public class LinqLookup<TItem> { private IList<Item> items = null; public IterationLookup(IEnumerable<TItem> items, Func<TItem, […]

从多个表创build一个LINQselect

这个查询很好: var pageObject = (from op in db.ObjectPermissions join pg in db.Pages on op.ObjectPermissionName equals page.PageName where pg.PageID == page.PageID select op) .SingleOrDefault(); 我用“op”字段获得新的types。 现在我想要检索我的'pg'字段,但是 select op, pg).SingleOrDefault(); 不起作用。 我怎样才能从两个表中select一切,使他们出现在我的新的pageObjecttypes?

Linq查询列表包含一个列表

我有2个class级的: public class ObjectA { public int Id; public string Name; } public class ObjectB { public int Id; public string Name; public List<ObjectA> ListOfObjectA; } 所以我有两个列表:ObjectB(ListObjectB)和另一个包含ObjectA(称为ListOfIdsA)的id列表。 如果这我想获得ObjectB列表ObjectB.ListOfObjectA在ListOfIdsA中。 我的第一个(也是错误的)方法是 ListObjectB.Where(p=> ListOfIdsA.Contains(p.ListOfObjectA.Select(b=>b.Id))) 但是这显然引发了一个例外。 我谷歌它,stackoverflowed,但我认为我的search技能不是很好,在这个任何人都可以给这个忍者awser? (最好在lambdaexpression式中)

最简单的方式来形成两个列表的联合

比较两个列表元素的最简单的方法是将A和B相互比较,并且只有当A不在A中时,才将B中存在的元素添加到A中? 为了说明,取列表A = {1,2,3}列表B = {3,4,5} 所以在操作AUB之后我想要列表A = {1,2,3,4,5}

LINQ to Entities不识别方法Int32 get_Item(Int32)

我是一个关于entity framework和linq的新手。 我的查询是这样的 var query = (from d in db.MYTABLE where d.RELID.Equals(myInts[0]) select d.ID).Distinct(); List<int?> urunidleri = query.ToList(); 当我执行这个代码,我得到了错误信息“LINQ to Entities does not recognized the method Int32 get_Item(Int32)”。 我如何解决我的问题? 谢谢…

将对象序列化为XElement并在内存中反序列化它

我想序列化一个对象到XML,但我不想保存在磁盘上。 我想把它放在一个XElementvariables(用于LINQ),然后反序列化回我的对象​​。 我怎样才能做到这一点?

LINQ性能常见问题

我正在努力与LINQ握手。 最令我困扰的是,即使我更好地理解语法,我也不想在不知不觉中牺牲performance力。 他们是否是“有效的LINQ”的信息或书籍的集中式存储库? 否则,你个人最喜欢的高性能LINQ技术是什么? 我主要关注LINQ to Objects,但是LINQ to SQL和LINQ to XML的所有build议当然也是受欢迎的。 谢谢。

在Scala中IEnumerable LINQ等价物的图表?

可能重复: LINQ类似于Scala 我正在寻找图表,它显示了IEnumerable的LINQ方法的Scala中的等价物: 首先是头 select是地图 SingleOrDefault是…(我不知道) … 等等 有谁知道这样的“翻译”表的任何东西?