【c# – 使用linq表达式过滤带有键列表的字典】教程文章相关的互联网学习教程文章

c# – 具有多个子查询的Linq查询【代码】

我正在努力将Oracle Sql查询转换为Linq,并且不确定如何继续.这是Sql查询:SELECT * FROM CustomerShip,(SELECT DISTINCT b.ShipSeq AS shipSeqFROM Orders a,CustomerShip bWHERE a.OrderId IN (SELECT OrderIdFROM OrdersWHERE CustomerId = @CustomerIdAND OrderType <> 'A')AND b.CustomerId = @CustomerIdAND b.ShipSeq = a.CustShipAND OrderStatus <> 'C'GROUP BY b.ShipSeq) i WHERE CustomerId = @Cu...

c# – 如何在LINQ中将多个OrderBy用于未指定的数字?【代码】

所以我知道你可以像LINQ一样使用OrderBy:MyList.OrderBy(x => x.foo[0].Value).ThenByDescending(x => x.foo[1].Value);但是我处在这样一种情况下,我不知道x.foo会有多少属性,我想通过它们来订购.这可能吗? 编辑:在这个例子中,x.foo是KeyValuePair的列表,我按照键的顺序按值排序.解决方法:如果至少有一个项目,并且所有项目具有相同数量的’foos’int foosPerItem = MyList.First().Foo.Count;IOrderedEnumerable<T> ordered = M...

C#.Net Linq用身份字段添加新记录【代码】

我有一个来自数据库模型的电话号码表.该表的主键phoneId具有“自动增量”值.我需要插入一个新行,但该表的模型版本没有可空的phoneId成员.如何指定新记录应该获得下一个自动增量/标识号? 我在尝试:var newPhone = new Phone() {PhoneId = null,PhoneNumber = newNumber};try {pdb.Phones.Add(newPhone);pdb.SaveChanges();} catch (Exception e) {Console.WriteLine("COULD NOT ADD new number: {0}", e.Message);}在模型中PhoneI...

c# – 我可以使用LINQ GroupBy来更干净地完成这项工作吗?【代码】

在这个与我的现实问题非常相似的人为例子中,我有一个来自外部源的数据集.来自外部源的每条记录采用以下形式:[Classification] NVARCHAR(32), [Rank] INT, [Data] NVARCHAR(1024)我希望构建一个对象,其中Rank和Data被修补到响应对象的单个实例中,该对象包含按Rank排序的三个硬编码分类值的列表属性. 我有一些有用的东西,但我不禁想到它可以做得更好.这就是我所拥有的:public static void Main() {IEnumerable...

c# – Linq:双值列表 – 后继值之间的差异【代码】

我有一个双重值列表…… 1.23,1.24,1.78,174 …… 所以我想计算后继者之间的差异 – >只添加(负值应首先为正)…以上4个值将为0,01 0,53( – ) – 0,04( – ) – >使它积极… 使用for循环,很容易……任何想法如何用linq解决它?解决方法:我不确定你对负面的意思是什么,但这可能会做你想要的.这太可怕了,因为它使用了副作用,但……double prev = 0d; var differences = list.Select(current =>{double diff = prev - current;prev =...

c# – .NET Linq加入【代码】

我在SQL中有2个表.Table 1 Step Id Step NameTable 2 Profile Id Step Id Completed即使表2中没有匹配,我也想返回以下结果:Results Table1.Step Id Table1.Step Name Table2.Profile Id Table2.Completed 我在SQL中执行此操作的方式如下:select * from [Table 1] t1 left join [Table 2] t2 on t1.Step Id = t2.Step Id这产生了我期望的结果. 当我把它翻译成linq时:public static List<UserCompletion> GetStepCompletion(stri...

c# – 哪一个可以有更好的性能 – LINQ to EF或NHibernate?

我想开始一个大项目.我研究了LINQ到EF和NHibernate的性能问题.我想在我的项目中使用其中一个作为ORM.现在我的问题是,这两个ORM中的哪一个可以让我在我的项目中获得更好的表现?我将使用SQL Server 2008作为数据库,使用C#作为编程语言.解决方法:两者都不会有“更好的表现”. 在分析性能时,您需要查看限制因素.在这种情况下,限制因素不是您选择的ORM,而是您如何使用该工具,如何编写查询以及如何优化数据库后端. 因此,“最快”的ORM将...

c# – Linq LIKE功能【代码】

所以..我正在使用LinqToEntities,我想查询部分字段.通常我会在SQL中使用LIKE关键字,然后从那里开始.. 我看到Linq没有它..什么是获得相同功能的好方法?解决方法:您可以使用String.StartsWith()或String.Contains(). 例如:var query = from b in db.Bookswhere b.Title.Contains("time")select b;这是因为LINQ将查询转换为expression tree,而对于LINQ to SQL / Entities,转换为SQL时支持许多“标准”C#方法.

c# – LINQ查询获取最早的其他值【代码】

假设我有一个包含大量股票报价的数据库TableQuotes 2010-07-22 09:45:00.000, "ABC", 102.23 2010-07-22 09:45:00.000, "EFG", 24.65 2010-07-22 09:45:00.000, "HIJ", 14.20 2010-07-22 10:45:00.000, "ABC", 104.25 2010-07-22 10:45:00.000, "EFG", 26.09 2010-07-22 10:45:00.000, "HIJ", 12.43 2010-07-23 09:45:00.000, "ABC", 101.23 2010-07-23 09:45:00.000, "EFG", 23.65 2010-07-23 09:45:00.000, "HIJ", 16.20 2010-07...

c# – 使用LINQ转换IEnumerable的集合【代码】

我有一个IEnumerable Car对象集合 A Car有房产:年份 使用LINQ,我想找到有>的位置同年1辆汽车并返回该列表. 我希望它必须返回一个列表数组,因为如果集合是:Car 1: Year 2010 Car 2: Year 2010 Car 3: Year 2009 Car 4: Year 2009 Car 5: Year 2010 Car 6: Year 2008我期待2010年的3个清单和2009年的2个清单 这可能吗 ?解决方法:你可以用group by来做到这一点.有关更多样品,请参见hooked on linqvar result = from car in carsgro...

c# – XPath到LINQ转换【代码】

在C#中使用XML文件,我正在尝试将XPath查询转换为LINQ,我不知道如何实现最后一节: XPath的:variable.XPathSelectElements("procedures/menu[@id='value']/procedure[@id]")LINQ:from el in variable.Descendants("procedures").Descendants("menu") where el.Element("id").Value == "value"我如何实现/ procedure [@id]部分? 我已经修改了你的建议@Jon但我似乎在这里做了一个我无法解决的简单错误.XDocument doc = XDocument.L...

c# – LINQ – 如何编写查询来设置变量bool True或False【代码】

我使用asp.net 4 linq和EF4. 我有这个查询,其中CmsSourcesContents是一个导航属性. 在我运行查询时,queryCheck的结果是类型IQuerable. 我需要在我的Linq查询中评估条件表达,但结果我想要一个Type Bool,如:bool queryCheck知道怎么做吗?谢谢!var queryCheck = from cnt in context.CmsContentswhere cnt.ContentId == myContentIdSelected && cnt.CmsSourcesContents.Any()select cnt;此查询应查找特定的cnt并检查它是否有任何关...

c# – 使用LINQ列表中的Groupby列表【代码】

我有两节课:class Customer {public string Name { get; set; }public string ZipCode { get; set; }public List<Order> OrderList { get; set; } }class Order {public string OrderNumber { get; set; } }使用LINQ,我想通过ZipCode获取Orders组列表.如果Zipcode“12121”有10个客户,每个有2个订单,那么它应该只返回一个包含20个订单列表的Zipcode. 我试图这样做,但不能弄清楚什么是错的var orders = br.CustOrderList .Select(r...

c#Linq选择加入选择组【代码】

我有这个MS-SQL语句:SELECT cv.id FROM ContactValue cv INNER JOIN (SELECT mainId, max(version) as vFROM ContactValueWHERE version <= $Version(int)GROUP BY mainId ) AS t ON t.mainId = cv.mainId AND t.v = cv.version WHERE cv.contact_id = $ContactID(int) AND cv.isActive = 1 ORDER BY sort'并希望在linq中实现.我确实将上面的查询分成多个查询,表现不佳.linq加入是否存在任何linq? 我的C#代码:var groupMax = ...

c# – LINQ是否会根据输入类型使用专用/优化版本的函数?【代码】

如果我使用LINQ执行以下操作:void DoSomeStuffWithHashSet() {HashSet<int> set = new HashSet<int>();for (int i = 0; i < 100; ++i) set.Add(i);if (Lookup(set, new Random().NextInt(200))System.Console.WriteLine("Yey");elseSystem.Console.WriteLine("Ney"); }bool Lookup(IEnumerable<int> haystack, int needle) {// O(N) search or HashSet<int>.Contains()?return Enumerable.Contains(collection, needle); }将Enume...

字典 - 相关标签