11得票3回答
Linq表达式如何确定相等性?

我考虑在字典中使用Linq表达式作为键。但是,我担心会得到奇怪的结果,因为我不知道Linq表达式如何确定相等性。 从Expression派生的类比较值相等还是引用相等?换句话说, Expression<Func<object>> first = () =...

12得票4回答
动态添加新的lambda表达式以创建过滤器。

我需要在一个ObjectSet上进行过滤,以便通过以下操作获得所需的实体: query = this.ObjectSet.Where(x => x.TypeId == 3); // this is just an example; 在代码的后面(延迟执行之前),我再次按照以下方式过...

7得票3回答
从PropertyInfo获取访问器作为Func<object>和Action<object>委托

我需要通过反射在运行时调用属性,并且这些属性的调用频率很高。因此,我正在寻找性能最佳的解决方案,这意味着我可能会避免使用反射。我想将属性访问器存储为“Func”和“Action”委托存储在一个列表中,然后调用它们。 private readonly Dictionary&lt;string,...

11得票1回答
从 Expression<> 中提取 Func<>

我想从以下表达式中提取 Func&lt;&gt;:Expression&lt;Func&lt;IQueryable&lt;Entity&gt;, IOrderedQueryable&lt;Entity&gt;&gt;&gt; order = q =&gt; q.OrderByDescendin...

8得票1回答
使用C# Entity Framework和Linq表达式时,出现System.Core错误:“代码应该是不可达的”。

执行以下 Linq to Sql 语句时,我遇到了“代码应该是不可达的”错误。我正在使用EF 6.1.3版。我认为这是与导航属性过滤有关的已知错误。似乎在EF7中可能已经修复了这个问题,但我在EF 6.2发行说明和GitHub上的EF6未完成事项中没有找到相关内容,所以我想寻找一种解决方法,也...

106得票2回答
如何在EF 4.3中使用复杂键使用AddOrUpdate来种子数据

我正在尝试在开发数据库中添加一些测试数据。 我已经成功地使用了context.People.AddOrUpdate(p => p.Id, people));。 我还有另一个需要填充数据的表格,但我不知道它的主键。 例如,我希望根据名字和姓氏匹配来AddOrUpdate。 我不确定如何正...

52得票2回答
如何从Expression<Func<MyClass, string>>动态创建一个Expression<Func<MyClass, bool>>谓词?

我试图添加 where 谓词,并且我的目标是创建与以下表达式相同的表达式:Services.Where(s =&gt; s.Name == "Modules" &amp;&amp; s.Namespace == "Namespace"); 我有以下代码:Expression&lt;Func&l...

15得票1回答
LINQ表达式中的Contains函数

我希望在linq中添加动态表达式,但是在contains方法上遇到了问题,对于Equal方法它可以完美地工作。问题在于我正在动态获取FilterField,如何在查询中替换它。到目前为止,我已经尝试过:List&lt;int&gt; Ids = new List&lt;int&gt;(); ...

11得票2回答
由于闭包,实际值被封装到DisplayClass中,导致获得ConstantExpression.Value

以下是我问题的简单演示代码。 [TestClass] public class ExpressionTests { [TestMethod] public void TestParam() { Search&lt;Student&gt;(s =&gt;...

12得票1回答
在C#表达式树中可靠地检测编译器生成的类

我正在构建一个类似于Linq-to-SQL的C#表达式转Javascript代码的转换器,但是我在处理编译器生成的表达式树时遇到了问题。 我面临的具体问题是如何处理编译器生成的MemberExpression值,但是它们的类型上没有指定CompilerGeneratedAttribute。 以...