草庐IT

c# - 如何在 LINQ to Entities 中执行 SQL "Where Exists"?

我真的很想做这样的事情:Select*fromAjoinBonA.key=B.keyjoinConB.key=C.key--propagatedkeyswhereexists(selectnullfromBwhereA.key=B.keyandB.Name="Joe")andexists(selectnullfromCwhereB.key=C.keyandC.Name="Kim")使用EntityFramework4和C#的linq语句会是什么样子?更新:显然.Contains()会产生“WhereExists”结果。所以,另一个尝试(我不知道这是否会编译LOL):varinner1=

c# - 无法将类型 'System.Linq.IQueryable' 隐式转换为 'System.Data.Entity.DbSet'

我是Linq的新手,所以我遇到了以下这些情况。编译期间出现以下错误,显示Cannotimplicitlyconverttype'System.Linq.IQueryable'to'System.Data.Entity.DbSet'。varquery=_db.Products;if(bool){query=query.Where(p=>p.Id==id);}所以我尝试将var更改为IQueryable并且它起作用了。IQueryablequery=_db.Products;if(bool){query=query.Where(p=>p.Id==id);}但后来,我尝试再次更改它(见下文)

c# - LINQ 表达式返回属性值?

我正在尝试创建一个通用函数来帮助我使用LINQtoSQL从本地列表中选择数千条记录。SQLServer(至少2005)将查询限制为2100个参数,我想选择比这更多的记录。这是一个很好的示例用法:varsome_product_numbers=newint[]{1,2,3...9999};Products.SelectByParameterList(some_product_numbers,p=>p.ProductNumber);这是我的(非工作)实现:publicstaticIEnumerableSelectByParameterList(Tableitems,IEnumerablep

c# - LINQ如何统计符合条件的元素个数

我已经尝试了很多东西,但对我来说最合乎逻辑的一个似乎是这个:intdivisor=AllMyControls.Take(p=>p.IsActiveUserControlChecked).Count();AllMyControls是UserControls的集合,我想知道有多少UserControls有IsActiveUserControlChecked属性设置为true。我在VS中得到的是:Cannotconvertlambdaexpressiontotype'int'becauseitisnotadelegatetype我的表情有什么问题吗? 最佳答案

c# - 使用 LINQ 使用相同的值填充 List<string>

我想填充List在指定的次数内使用相同的字符串值。在C#中它是:ListmyList=newList();for(inti=0;i是否可以使用LINQ执行此操作? 最佳答案 是的,使用Enumerable.Repeat:varmyList=Enumerable.Repeat("myString",50).ToList();或者这个:varmyList=newList(Enumerable.Repeat("myString",50));如果你有一个现有的列表,你想添加这些元素,使用这个:myList.AddRange(Enumerab

c# - C# 7 是否允许解构 linq 表达式中的元组

我正在尝试解构Linq表达式中的元组//somewhereinsideanothermethodvarresult=fromwordinwordslet(original,translation)=Convert(word)selectoriginal这是返回元组的方法的签名(stringOriginal,stringTranslation)Convert(DictionaryWordword){//implementation}但这不是一个有效的语法。我只能在不解构的情况下访问元组值:varresult=fromwordinwordsletresult=Convert(word)se

c# - LINQ 查询的返回类型是什么?

是IEnumerable吗.据我所知,引用总是指向一个类实例。LINQ查询真正指向什么实例类型? 最佳答案 您可以调用.GetType()查询在你的IEnumerable上变量并在调试器中检查类型。对于不同的LINQ提供者甚至不同的LINQ方法,这些类型可能不同也可能不相同。对您的代码来说重要的是它们都实现了IEnumerable你应该使用哪个,或者IQueryable它还接受表达式,这意味着您的谓词和投影将成为语法树,并且可以在运行时由LINQ提供程序操作,例如将被翻译成SQL。Actual类,如果这是您要问的,甚至可能是编译器生

c# - 在 LINQ 中使用 DataGridViewRowCollection 对象

我想使用DataGridViewRowCollection在使用扩展方法和lambda表达式的LINQ表达式中。不幸的是,扩展方法适用于类型IEnumerable,这DataGridViewRowCollection不执行。有趣的是,我可以在这里使用类似SQL语法的LINQ:IEnumerablelRows=fromDataGridViewRowrowindgvGrid.Rowsselectrow;这样做之后,我可以使用LINQ扩展方法:foreach(DataGridViewRowlRowinlRows.Where(row=>row.index>4)){...}有什么方法可以转换我的

c# - 在单个 LINQ 语句中使用 .Select 和 .Where

我需要使用LINQ从特定表中收集DistinctId。问题是我还需要一个WHERE语句,它应该只根据我设置的要求过滤结果。对于必须如此频繁地使用LINQ来说相对较新,但我或多或少地使用了以下代码:privatevoidWriteStuff(SqlHelperdb,EmployeeHelperemp){StringcheckFieldChange;AnIListtableClass=newAnIList(db,(int)emp.PersonId);varlinq=tableClass.Items.Where(x=>x.UserId==emp.UserId&&x.Date>DateBefo

c# - 将 CollectionBase 转换为 List 或可与 Linq 一起使用的数据类型

我正在使用Aspose单元格来操作Excel电子表格。API中的一种类型是电子表格中的图片集合,它派生自CollectionBase:查看此链接:http://www.aspose.com/documentation/.net-components/aspose.cells-for-.net/aspose.cells.pictures.html我想将此类型转换为允许我使用Linq表达式的类型有哪些选择?我想我可以遍历它并手动将它添加到newList但是有没有更好的方法来做到这一点?我看过这个问题AddingIEnumerabletoclassderivedfromCollectionB