色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

表達(dá)式樹和泛型委托

什么是表達(dá)式樹?

  表達(dá)式樹又稱為表達(dá)式目錄樹,以數(shù)據(jù)形式表示語言級(jí)代碼。所有的數(shù)據(jù)都存儲(chǔ)在樹結(jié)構(gòu)中,每個(gè)結(jié)點(diǎn)表示一個(gè)表達(dá)式(Expression)。要想手動(dòng)生成表達(dá)式樹我們需要引用System.Linq.Expressions 命名空間,最重要的一個(gè)類是Expression,它是所有表達(dá)式的基類。例如:

  1:參數(shù)表達(dá)式:ParameterExpression,就是一個(gè)方法中的參數(shù),例如 search(string key),key可以看成是一個(gè)參數(shù)表達(dá)式。

  2:二元表達(dá)式:BinaryExpression,例如a+b等。

  3:方法調(diào)用表達(dá)式:MethodCallExpression,例如:自定義LINQ提供程序中實(shí)現(xiàn)orderby 的操作:

MethodCallExpression orderByCallExpression = Expression.Call(
                
typeof(Queryable),
                
"OrderBy",
                
new Type[] { queryableData.ElementType, queryableData.ElementType
 },
                whereCallExpression,
                Expression.Lambda
<Func<stringstring>>(pe, new ParameterExpression
[] { pe }));

NET技術(shù)表達(dá)式樹和泛型委托,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 庆阳市| 明光市| 新营市| 大邑县| 华池县| 惠来县| 恭城| 溧阳市| 汽车| 施甸县| 绥阳县| 无棣县| 全椒县| 北票市| 八宿县| 永丰县| 临洮县| 杭锦后旗| 略阳县| 漳平市| 桦川县| 新化县| 临洮县| 乐亭县| 汤阴县| 荥经县| 瑞丽市| 营山县| 黄石市| 章丘市| 寻乌县| 栾城县| 横山县| 常山县| 晋宁县| 安远县| 开封县| 荆门市| 洪湖市| 寿光市| 苍南县|