【c#-在LINQ JOIN中添加第二个条件】教程文章相关的互联网学习教程文章

c# – LINQ查询(Group BY)?【代码】

考虑以下对象:public class Address { public string city; public string state; public string country; }如果我有一个地址列表,我将如何使用LINQ获取城市,州和国家匹配的计数列表. 所以我的结果看起来像这样: >“princeton”“nj”“usa”122>“奥斯汀”“tx”“美国”44>“la”“ca”“usa”1>“princton”“na”“uk”3> …. 谢谢!解决方法:比Marc的答案更进了一步(他在我发布之前编辑过!).大声笑var qry = from addr in ...

c# – LINQ – 通过WHERE子句查询大约6000条唯一记录【代码】

我有一个问题,不知道如何解决它.想象一下,你有一个List< int>大约6000个唯一的id匹配一个表的id,在sql数据表中有大约一百万条记录.我想从我的c#程序中选择那些通过LINQ匹配那些id的记录.我不想使用Contains()因为它的翻译速度非常慢而且参数列表变得很大. 任何其他想法如何解决这个问题? 关于我的场景的一些事情(这不是真实的,而是类似的场景): 我有一个连接到数据库的服务.例如,客户端请求一批项目,例如Person.服务接受请求,查询...

c# – 使用Linq创建一个字典【代码】

如何使用Linq创建一个Dictionary(甚至更好,一个ConcurrentDictionary)? 例如,如果我有以下XML<students><student name="fred" address="home" avg="70" /><student name="wilma" address="home, HM" avg="88" />.. (more <student> blocks). </students>加载到XDocument doc;并希望填充ConcurrentDictionary< string,Info> (其中关键是名称和信息是一些持有地址和平均值的类.填充信息现在不是我的关注),我该怎么做?解决方法: XDo...

c# – 如何将Linq var转换为List【代码】

我试图将Linq var转换为List.my c#代码是private List<HyperlinkInfo> GetHyperlinkByCode() {TourInfoBusiness obj = new TourInfoBusiness();List<HyperlinkInfo> lst = new List<HyperlinkInfo>();lst = obj.GetAllHyperlink();//lst = lst.Select(x => x.Attraction).ToList();var k = lst.Select(x => x.Attraction).Distinct(); }如果你看上面的代码,直到Line var k = lst.Select(x => x.Attraction).Distinct()...

C#使用LINQ解析简单的XML文件【代码】

我有这个非常简单的xml文件:<?xml version="1.0" encoding="UTF-8"?> <ConfigurationFile><ConfigurationFilePath>Test1</ConfigurationFilePath><ConnectionString>Test2</ConnectionString><AnalyzeFilePath>Test3</AnalyzeFilePath> </ConfigurationFile>我想获得每个领域的信息.但这并没有显示任何东西.. 这是我的C#代码背后:private void ParseXMLFile() {Console.WriteLine("Parse");if (configurationPAthFileTextbox.Tex...

如何使用LINQ C#过滤内部集合【代码】

我需要使用LINQ过滤Collection的Inner Collection来获取记录.public class MobileModel : Notify {private string _brand = string.Empty;private ObservableCollection<MobileModelInfo> _model = new ObservableCollection<MobileModelInfo>();private string _os = string.Empty;public string Brand{get { return _brand; }set { _brand = value; OnPropertyChanged(); }}public ObservableCollection<MobileModelInfo> Model{...

c# – 如何使用linq从列表中删除尾随对象?【代码】

我有一个具有属性的对象集合,我想在LINQ中删除所有尾随对象(例如)值为0.public class Object {public Object(){}public int Property {get; set;} }如果我有一个对象列表:new Object(){ Property = 1}; new Object(){ Property = 0}; new Object(){ Property = 9}; new Object(){ Property = 7}; new Object(){ Property = 0}; // "trailing zero" new Object(){ Property = 0}; // "trailing zero" new Object(){ Property = 0};...

c# – 如何对数字字符串列表进行排序?最好使用LINQ【代码】

我有一个以下方式的字符串: – string[] things = new string[] { "1", "10", "2", "1_1", "2_1","3_1" };所需的输出是:"1", "1_1", "2", "2_1", "3_1", "10",我如何使用LINQ实现这一目标?解决方法:如果该格式是严格的,您可以解析为Version并按顺序排序:string[] orderedThings = things.Select(t => new { Thing = t, Numbers = (t + "_0").Split('_') }).Where(x => x.Numbers.All(s => s.All(char.IsDigit))).Select(x => n...

如何在C#中使用Linq将函数应用于列表中的每个元素,如python中的方法reduce()?【代码】

如何在C#中使用Linq将函数应用于列表中的每个元素,如python中的方法reduce()?解决方法:假设你在谈论this reduce function,那么C#和LINQ中的等价物是Enumerable.Aggregate. 快速举例:var list = Enumerable.Range(5, 3); // [5, 6, 7] Console.WriteLine("Aggregation: {0}", list.Aggregate((a, b) => (a + b))); // Result is "Aggregation: 18"

c# – 是否有任何LINQ表达式将数据表转换为字典【代码】

我有很多情况下我会进行查询并获取数据表并将其转换为:Dictionary<string, string>要么Dictionary<int, int>要么Dictionary<string, [Someobject]>我可以使用循环创建自己的函数,但我想看看是否有任何LINQ方式将数据表转换为字典,只是为键和值传递2个lambdas(类似于将IEnumerable转换为字典所能做到的)解决方法:你可以使用AsEnumerable& ToDictionary: 例如,如果您想要一个字典,其中键来自col1,值来自col2:table.AsEnumerable()...

c# – 使用LINQ而不是使用for-each循环【代码】

我有以下代码.如何将其转换为LINQ?任何人请帮助我. 在下面的代码中,’powd’包含db值,purchaseOrderUpdateRequest包含用户提交的数据.bool hasUpdate;foreach (var item in purchaseOrderUpdateRequest.Lines) {var line = powd.PurchaseOrderLines.Single(p => p.ItemNumber == item.ItemNumber);decimal quantityToReceive = item.QuantityReceived - line.QuantityReceivedToDate;if (quantityToReceive > 0){hasUpdate =true...

c# – LINQ更新大量记录的最快方式(> 2m)【代码】

我有这个循环:using(var db = new MainContext()) {var q = db.tblInternalURLs;foreach (var rec in q){db.ExecuteCommand("UPDATE tblInternalURLS SET hash = '" + LoginAPI.GetSha1(rec.URL) + "' WHERE ID = " + rec.ID);} }将更新查询转换为db.ExecuteCommand已大大提高了速度,但我想知道是否有更快的方法来执行这些查询,因为它仍然需要很长时间超过2,000,000条记录.我相信很多开销都在最初的LINQ查询中.它是否正确?解决方...

c# – LINQ to Entities DateTime不一致【代码】

我有以下C#代码创建一个DateTime,将其输入到表中,然后查询该表:DateTime date = DateTime.Now;DateTest newRecord = new DateTest {dateColumn = date };db.DateTest.AddObject(newRecord); db.SaveChanges();IQueryable<DateTest> records =from d in db.DateTestselect d;如果我此时破坏代码,并查看调试器中的对象,我得到日期对象:Date {11/22/2011 12:00:00 AM} System.DateTime Day 22 int DayOfWeek Tuesday Syste...

c# – LINQ在HashSet上的ForEach?【代码】

我很好奇是什么限制必须让设计决定不让HashSet能够使用LINQ的ForEach查询. 这两种实现的幕后实际情况有何不同:var myHashSet = new HashSet<T>; foreach( var item in myHashSet ) { do.Stuff(); }VSvar myHashSet = new HashSet<T>; myHashSet.ForEach( item => do.Stuff(); }我(非常)确定这只是因为HashSet没有实现IEnumerable – 但是正常的ForEach循环做什么不同会使HashSet更多地支持它? 谢谢解决方法:LINQ没有ForEach.仅列...

c# – Linq无法从’System.Collections.Generic.IEnumerable’转换为’string []’【代码】

我有这个代码的问题string.Join(",", Encoding.Unicode.GetBytes("10.10.10.11").Select(x => x.ToString("X2")));我收到了错误 无法从’System.Collections.Generic.IEnumerable< string>‘转换’string []’ 它如何导出到逗号分隔的txt框?解决方法:您可以通过调用ToArray()扩展方法将IEnumerable转换为字符串数组:string.Join(",", Encoding.Unicode.GetBytes("10.10.10.11").Select(x => x.ToString("X2")).ToArray());边注:...