Tag: linq

使用ExpressionVisitor排除连接中的软删除记录

我有一个框架,在数据库中实现软删除(Nullable DateTime称为DeletedDate)。 我正在使用Repository来处理主要实体请求,如下所示: /// /// Returns a Linq Queryable instance of the entity collection. /// public IQueryable All { get { return Context.Set().Where(e => e.DeletedDate == null); } } 这很好用,但我遇到的问题是当你包含导航属性时,以及如何确保只查询活动记录。 有问题的存储库方法如下所示: /// /// Returns a Linq Queryable instance of the entity collection, allowing connected objects to be loaded. /// /// Connected objects to be included […]

如何在Entity Framework中指定索引提示?

SQL select * from table1 with(index=IX_table1_1) Linq to sql使用ado.net实体想编写上面的代码。 我特别找不到实体,使用索引。 LINQ var querysample = from a in db.table1 select a;

LINQ和XDocument:如何创建XML文件?

我在c#中有一个三个List,变量名是l_lstData1, l_lstData2, l_lstData3 。 文件结构是 3个列表的值如下: l_lstData1[0] = “India”; l_lstData1[1] = “chennai”; l_lstData1[2] = “hyderabad”; l_lstData1[3] = “calcutta”; 所以上面的XML(element:Data)的level属性值=“2”。 l_lstData2[0] = “vijayawada”; l_lstData2[1] = “cochin”; 所以上面XML(element:Data)的level属性值=“1”。 l_lstData3[0] = “madurai”; l_lstData3[1] = “trichy”; 所以上面的XML(element:Data)的level属性值=“0”。

两个List 之间的区别

我可以使用花哨的LINQ查询返回List ,方法是将它传递给方法( List oldList, List newList ),看看两个列表之间有什么区别? 基本上,我想获取添加到newList的任何文件的列表,这些文件在oldList中不可用。

确定IQueryable中元素的位置

我有一个IQueryable,它按某种条件排序。 现在我想知道IQueryable中特定元素的位置。 是否有linq表达式来实现。 比如说IQueryable中有10个元素,第6个元素与条件匹配,我想得到数字6。

LINQ如何编译成CIL?

例如: var query = from c in db.Cars select c; foreach(Car aCar in query) { Console.WriteLine(aCar.Name); } 一旦编译,这将如何翻译? 幕后发生了什么?

LINQ to SQL *编译*查询以及何时执行

我有以下编译查询。 private static Func<Db, int, IQueryable> func = CompiledQuery.Compile((Db db, int id) => from i in db.Items where i.ID == id select i ); 当我这样做时,它立即在数据库上执行 var db = new Db() var query = func(db, 5); // Query hits the database here 和之前一样 var result = query.SingleOrDefault(); // Happens in memory 但是如果没有编译这个查询,就像在 var query = from […]

找到两个词典之间的差异

是否有LINQ方法来查找两个通用字典之间的区别? 与此问题相同,但使用通用词典。

Linq用另一个集合中的值更新集合?

我有IQueryable baseList 并List someData 我想要做的是更新baseList中的一些项目中的属性。 对于someData中的每个项目,我想在baselist中找到相应的项目并更新项目的属性。 someOtherClass.someCode == baseList.myCode 我可以使用Linq进行某种类型的连接并设置baseList.someData + = someOtherClass.DataIWantToConcantenate。 我可以通过迭代来做到这一点,但是有一种花哨的Linq方式,我可以在几行代码中做到这一点吗? 感谢您在圣地亚哥的任何提示

Linq UNION查询选择两个元素

我想使用LINQ查询从我的数据库表中选择2个元素,我看到一个使用UNION的例子我没有太多经验,但我想也许这就是我需要的但是我得到了一个我无法解决的错误而且我不管怎样,我不确定它是否可以修复。 所以这是我的查询: IList materialTypes = ((from tom in context.MaterialTypes where tom.IsActive == true select tom.Name) .Union(from tom in context.MaterialTypes where tom.IsActive == true select (tom.ID))).ToList(); 这似乎是抱怨尝试在IEnumarebale上使用IQueryable上的IEnumarebale 。 我尝试通过添加像这样的ToString()来修复它 – (tom.ID).ToString导致在Visual-Studio-2010清除错误下划线但在运行时我得到: {“LINQ to Entities does not recognize the method ‘System.String ToString()’ method, and this method cannot be translated into a store expression.”} Ty,Leron。