表达式?
谁能解释一下表达式
有什么用?
Can anyone explain what is the use of expressions<func>
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
谁能解释一下表达式
有什么用?
Can anyone explain what is the use of expressions<func>
?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
我假设您的意思是
Expression
,其中Func
是任何类型的通用Func
委托。如果是这种情况,
Expression
所做的就是获取您在其位置传递的 lambda 表达式树。您会在IQueryable
的变体或许多流畅的界面中最常见地发现这种情况。表达式树通常在运行时使用,将 lambda 表达式转换为其他格式。例如 LINQ to SQL 中的 SQL。
您可以阅读有关
表达式
以及有关.NET 中的表达式树的更多信息
I'm going to assume you mean
Expression<Func>
whereFunc
is any variety of the genericFunc
delegate.If this is to be the case, what
Expression<Func>
is doing is getting an expression tree of the lambda that you're passing in its place. You'll find this most commonly on the variants ofIQueryable<T>
or in many fluent interfaces.The expression trees are used at run-time to generally translate the lambda expression into some other format. Such as SQL in the case of LINQ to SQL.
You can read up more on
Expression
And more about expression trees in .NET
表达式树表示树状数据结构中的代码,其中每个节点都是一个表达式,例如方法调用或二元运算(例如 x <<)。 y
您可以本文阅读更多内容。
Expression trees represent code in a tree-like data structure, where each node is an expression, for example, a method call or a binary operation such as x < y
You can read more in this article.
来自 MSDN:
下面是它的使用的真实示例,说明了它的用途:http://www.albahari.com/nutshell/predicatebuilder.aspx
From MSDN:
Here's a real world example of it's use that shows why it's useful: http://www.albahari.com/nutshell/predicatebuilder.aspx
您可能需要从此处开始
You may want to start here