簡體   English   中英

將參數替換為表達式

[英]Replace parameter into expression

鑒於:

var paramA = Expression.Parameter(typeof(string), "a");

和:

Expression<Func<string, bool>> expr = b => b == "Something";

無論如何,用paramAb替換成表達式expr嗎?

您可以遍歷expr的表達式樹,並使用本問答中描述的方法用paramA替換所有出現的b“用內部表達式組合兩個lambda表達式”

但是,如果僅需要一個使用paramA作為參數的lambda表達式, paramA容易制作一個包裝expr的lambda:

var res = (Expression<Func<string,bool>>)Expression.Lambda(
    Expression.Invoke(expr, paramA)
,   paramA
);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM