91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LINQ Expression tree是什么

發布時間:2021-12-02 09:25:29 來源:億速云 閱讀:144 作者:小新 欄目:編程語言

這篇文章主要介紹LINQ Expression tree是什么,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

LINQ Expression tree

一棵LINQ Expession tree在創建后就不可再改變。假如某個程序接收一棵Expression tree為參數,然后僅僅是用于生成別的形式的代碼(例如SQL語句),那么這個不可改變性不會有什么影響。但如果一個程序想對一棵Expression tree進行修改該怎么辦呢?解決方法是從來源的Expression tree復制出一棵新的樹,在復制過程中根據自己的需要選擇是直接復制原有節點還是創建修改了的節點。MSDN上有一個例子解釋了如何實現這種需求,如何:修改表達式目錄樹。

更詳細的LINQ Expression tree的討論留待以后再說。先看代碼:

digraph ExpressionTree {   node [fontsize=12, fontcolor=blue, font=Courier, shape=box]   // node declarations  lambda [label="Lambda Expression"]   anoFuncSig [label="Anonymous Function\nSignature"]  arrow [label="=>"]  anoFuncBody [label="Anonymous Function\nBody"]   impFuncSig [label="Implicit Anonymous\nFunction Signature"]  expr [label="Expression"]   impParam [label="Implicit Anonymous\nFunction Parameter"]  uexpr1 [label="Unary Expression"]   neg [label="-"]  uexpr2 [label="Unary Expression"]   id [label="Identifier:\nx"]   simpName [label="Simple Name:\nx"]   // relations   lambda -> anoFuncSig  lambda -> arrow  lambda -> anoFuncBody   {rank=same; anoFuncSig arrow anoFuncBody }   anoFuncSig -> impFuncSig  anoFuncBody -> expr   {rank=same; impFuncSig expr }   impFuncSig -> impParam  expr -> uexpr1 [style=dashed]   {rank=same; impParam uexpr1 }   impParam -> id  uexpr1 -> neg  uexpr1 -> uexpr2   {rank=same; id neg uexpr2 }   uexpr2 -> simpName  }

ast.dot: 

digraph ExpressionTree {   node [fontsize=12, fontcolor=blue, font=Courier, shape=box]  edge [fontsize=10, fontcolor=purple]  // node declarations  lambda [label="Lambda Expression"]   param [label="Parameter:\nx"]  body [label="Unary Expression\n(Negation)"]   param2 [label="Simple Name:\nx"]   // relations   lambda -> param [label="Signature"]  lambda -> body [label="Body"]   {rank=same; param body }   body -> param2  param -> param2 [label="(same node)", fontsize=8, style=dashed, dir=both]  }

以上是“LINQ Expression tree是什么”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丹巴县| 金寨县| 城固县| 靖西县| 双牌县| 铜陵市| 清水河县| 康平县| 青河县| 禹州市| 昆明市| 和顺县| 清涧县| 大连市| 郸城县| 栾城县| 外汇| 巴林右旗| 四川省| 威信县| 关岭| 拜城县| 手机| 民丰县| 六枝特区| 巫溪县| 武义县| 都昌县| 宕昌县| 德格县| 沅陵县| 沙坪坝区| 江门市| 信阳市| 奉新县| 肥城市| 锡林浩特市| 玛沁县| 克东县| 山阳县| 永和县|