<i id='BmIBu'><tr id='BmIBu'><dt id='BmIBu'><q id='BmIBu'><span id='BmIBu'><b id='BmIBu'><form id='BmIBu'><ins id='BmIBu'></ins><ul id='BmIBu'></ul><sub id='BmIBu'></sub></form><legend id='BmIBu'></legend><bdo id='BmIBu'><pre id='BmIBu'><center id='BmIBu'></center></pre></bdo></b><th id='BmIBu'></th></span></q></dt></tr></i><div id='BmIBu'><tfoot id='BmIBu'></tfoot><dl id='BmIBu'><fieldset id='BmIBu'></fieldset></dl></div>
      <bdo id='BmIBu'></bdo><ul id='BmIBu'></ul>

    1. <tfoot id='BmIBu'></tfoot>
        <legend id='BmIBu'><style id='BmIBu'><dir id='BmIBu'><q id='BmIBu'></q></dir></style></legend>

        <small id='BmIBu'></small><noframes id='BmIBu'>

      1. 委托关键字与 lambda 表示法

        delegate keyword vs. lambda notation(委托关键字与 lambda 表示法)
      2. <legend id='yjWT1'><style id='yjWT1'><dir id='yjWT1'><q id='yjWT1'></q></dir></style></legend>
        <tfoot id='yjWT1'></tfoot>

            <small id='yjWT1'></small><noframes id='yjWT1'>

              <bdo id='yjWT1'></bdo><ul id='yjWT1'></ul>
                <tbody id='yjWT1'></tbody>
              <i id='yjWT1'><tr id='yjWT1'><dt id='yjWT1'><q id='yjWT1'><span id='yjWT1'><b id='yjWT1'><form id='yjWT1'><ins id='yjWT1'></ins><ul id='yjWT1'></ul><sub id='yjWT1'></sub></form><legend id='yjWT1'></legend><bdo id='yjWT1'><pre id='yjWT1'><center id='yjWT1'></center></pre></bdo></b><th id='yjWT1'></th></span></q></dt></tr></i><div id='yjWT1'><tfoot id='yjWT1'></tfoot><dl id='yjWT1'><fieldset id='yjWT1'></fieldset></dl></div>
                • 本文介绍了委托关键字与 lambda 表示法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  一经编译,有没有区别:

                  Once it is compiled, is there a difference between:

                  delegate { x = 0; }
                  

                  () => { x = 0 }
                  

                  ?

                  推荐答案

                  简答:没有.

                  可能不相关的较长答案:

                  Longer answer that may not be relevant:

                  • 如果将 lambda 分配给委托类型(例如 FuncAction),您将获得匿名委托.
                  • 如果将 lambda 分配给 Expression 类型,您将获得表达式树而不是匿名委托.然后可以将表达式树编译为匿名委托.
                  • If you assign the lambda to a delegate type (such as Func or Action) you'll get an anonymous delegate.
                  • If you assign the lambda to an Expression type, you'll get an expression tree instead of a anonymous delegate. The expression tree can then be compiled to an anonymous delegate.

                  这是表达式的一些链接.

                  Here's some links for Expressions.

                  • System.Linq.Expression.Expression(TDelegate)(开始在这里).
                  • Linq in-memory with delegates(例如 System.Func)使用 System.Linq.Enumerable.带有表达式的 Linq to SQL(和其他任何东西)使用 System.Linq.可查询.查看这些方法的参数.
                  • 一个解释来自 ScottGu.简而言之,Linq in-memory 会产生一些匿名方法来解决您的查询.Linq to SQL 将生成一个表示查询的表达式树,然后将该树转换为 T-SQL.Linq to Entities 将生成一个表示查询的表达式树,然后将该树转换为适合平台的 SQL.
                  • System.Linq.Expression.Expression(TDelegate) (start here).
                  • Linq in-memory with delegates (such as System.Func) uses System.Linq.Enumerable. Linq to SQL (and anything else) with expressions uses System.Linq.Queryable. Check out the parameters on those methods.
                  • An Explanation from ScottGu. In a nutshell, Linq in-memory will produce some anonymous methods to resolve your query. Linq to SQL will produce an expression tree that represents the query and then translate that tree into T-SQL. Linq to Entities will produce an expression tree that represents the query and then translate that tree into platform appropriate SQL.

                  这篇关于委托关键字与 lambda 表示法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  Multicast delegate weird behavior in C#?(C# 中的多播委托奇怪行为?)
                  Parameter count mismatch with Invoke?(参数计数与调用不匹配?)
                  How to store delegates in a List(如何将代表存储在列表中)
                  How delegates work (in the background)?(代表如何工作(在后台)?)
                  C# Asynchronous call without EndInvoke?(没有 EndInvoke 的 C# 异步调用?)
                  Delegate.CreateDelegate() and generics: Error binding to target method(Delegate.CreateDelegate() 和泛型:错误绑定到目标方法)
                  <tfoot id='kXqIH'></tfoot>

                    <tbody id='kXqIH'></tbody>
                  <i id='kXqIH'><tr id='kXqIH'><dt id='kXqIH'><q id='kXqIH'><span id='kXqIH'><b id='kXqIH'><form id='kXqIH'><ins id='kXqIH'></ins><ul id='kXqIH'></ul><sub id='kXqIH'></sub></form><legend id='kXqIH'></legend><bdo id='kXqIH'><pre id='kXqIH'><center id='kXqIH'></center></pre></bdo></b><th id='kXqIH'></th></span></q></dt></tr></i><div id='kXqIH'><tfoot id='kXqIH'></tfoot><dl id='kXqIH'><fieldset id='kXqIH'></fieldset></dl></div>

                      <small id='kXqIH'></small><noframes id='kXqIH'>

                        <bdo id='kXqIH'></bdo><ul id='kXqIH'></ul>
                      • <legend id='kXqIH'><style id='kXqIH'><dir id='kXqIH'><q id='kXqIH'></q></dir></style></legend>