產品下面的片段都是相同的輸出。 我明白Func如何用單個參數封裝一個方法,並返回一個布爾值。你可以爲它分配一個 方法,匿名方法或lambda表達式。試圖瞭解表達式樹是什麼
Func<int, bool> deleg = i => i < 5;
Console.WriteLine("deleg(4) = {0}", deleg(4));
下面是使用表達式樹,我還沒有完全理解。我爲什麼要這樣做?它更靈活嗎,它給我什麼優勢?
System.Linq.Expressions.Expression<Func<int, bool>> expr = i => i < 5;
Func<int, bool> deleg2 = expr.Compile();
Console.WriteLine("deleg2(4) = {0}", deleg2(4));
你如何檢查他們?這個過程叫什麼?例子? – codecompleting
@codecompleting:使用[Expression類](http://msdn.microsoft.com/en-us/library/system.linq.expressions.expression.aspx)及其[子類](http: //msdn.microsoft.com/en-us/library/system.linq.expressions.expression.aspx#inheritanceContinued)。例如,您可以在[本文](http://marlongrech.wordpress.com/2008/01/08/working-with-expression-trees-part-1/)中看到一個小例子。 – sepp2k