C#表达式树与委托的区别
C# 中,表达式树 Expression<Func<TEntity, bool>> 和委托 CriteriaDelegate 之间的区别
表达式树是一个描述lambda表达式结构的数据结构;
表达式树可以被编译(编译时)成中间语言(IL),或者被编译成其它语言如SQL;
表达式树不是一个可直接执行的代码,是一个可以被分析和转换的表达式描述(表达式树不可直接执行);
委托是一个方法引用,可以直接被调用来执行代码;
委托通常在内存中直接执行操作,不可用于生成在其他上下文(如数据库)中执行的代码;
ORM中,表达式树使得能够将C#代码转换为有效的数据库查询语句,委托不具备这种能力
本文链接:
/archives/1718419774602
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
北溟鱼的博客!
喜欢就支持一下吧