为了账号安全,请及时绑定邮箱和手机立即绑定

以下内容是关于C# 接收并解析lambda表达式的问题

以下内容是关于C# 接收并解析lambda表达式的问题

C# C PHP
眼眸繁星 2021-11-25 15:15:19
想编写一个方法,接收一个lambda表达式,然后解析这个lambda表达式,如 表达式为 m=>m==0&&m<9解析后希望获得其中的元素 如 m = 0 &&等更复杂的解释 我可能会用一个model ,model中包含多个字段如name sex 等lambda表达式对应 就可能成为 model=>model.name==“ss”&model.sex==1这样我想编写的方法可以解析它,并拿出model、model.name、ss、==、这些元素同时还可能有这种情况,使用其他变量的lambda表达式如 string s=“ss”;model=>model.name==s这样的表达式要求解析之后可以读出s的值来其实编写这个方法是为了将一个bool型的lambda表达式传入方法中,并在其中解析表达式,获得它的每一个元素。希望大家帮忙,帮得上我追加100悬赏。
查看完整描述

2 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

System.Linq.Expressions.Expression<Func<int, bool>> lambda = (m=>m==0&&m<9);
lambda变量就是你所需要的表达式树。
有关表达式树的类在System.Linq.Expressions命名空间,由于类的数量众多,写起来可以出一本书,所以具体用法你就自己查阅相关资料了。或者你可以在debug模式下研究下lambda变量的构成。

查看完整回答
反对 回复 2021-11-29
?
慕的地6264312

TA贡献1817条经验 获得超6个赞

用Func<T>委托就行了,不用自己开发。

查看完整回答
反对 回复 2021-11-29
  • 2 回答
  • 0 关注
  • 246 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信