想編寫一個(gè)方法,接收一個(gè)lambda表達(dá)式,然后解析這個(gè)lambda表達(dá)式,如 表達(dá)式為 m=>m==0&&m<9解析后希望獲得其中的元素 如 m = 0 &&等更復(fù)雜的解釋 我可能會(huì)用一個(gè)model ,model中包含多個(gè)字段如name sex 等lambda表達(dá)式對(duì)應(yīng) 就可能成為 model=>model.name==“ss”&model.sex==1這樣我想編寫的方法可以解析它,并拿出model、model.name、ss、==、這些元素同時(shí)還可能有這種情況,使用其他變量的lambda表達(dá)式如 string s=“ss”;model=>model.name==s這樣的表達(dá)式要求解析之后可以讀出s的值來(lái)其實(shí)編寫這個(gè)方法是為了將一個(gè)bool型的lambda表達(dá)式傳入方法中,并在其中解析表達(dá)式,獲得它的每一個(gè)元素。希望大家?guī)兔?,幫得上我追?00懸賞。
2 回答

幕布斯7119047
TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊
System.Linq.Expressions.Expression<Func<int, bool>> lambda = (m=>m==0&&m<9);
lambda變量就是你所需要的表達(dá)式樹(shù)。
有關(guān)表達(dá)式樹(shù)的類在System.Linq.Expressions命名空間,由于類的數(shù)量眾多,寫起來(lái)可以出一本書(shū),所以具體用法你就自己查閱相關(guān)資料了?;蛘吣憧梢栽赿ebug模式下研究下lambda變量的構(gòu)成。
- 2 回答
- 0 關(guān)注
- 279 瀏覽
添加回答
舉報(bào)
0/150
提交
取消