亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用反射獲取 Lambda 表達式中的屬性值

使用反射獲取 Lambda 表達式中的屬性值

C#
楊__羊羊 2021-09-19 16:17:51
我有一個名為 SearchDetails 的對象,其中包含:SearchDetails: { ColName: "StrName"  SearchVal" "mega" }我正在使用反射方法制作通用的 lambda 表達式。    public dynamic searchMethod(object SearchDetails)    {        ParameterExpression Parameter = Expression.Parameter(typeof(SearchDetails), "x");        var searchCol = Expression.Property(         Parameter,         SearchDetails.GetType().GetProperty("ColName")       );        var colVal = Expression.Property(          Parameter,          SearchDetails.GetType().GetProperty("SearchValue").Name        );       Expression contMethod = Expression.Call(searchCol, "Contains", null, colVal);        Expression<Func<SearchDetails, bool>> lambda =           Expression.Lambda<Func<SearchDetails, bool>>(contMethod, Parameter);        return lambda;    }問題是我得到的 lambda 表達式如下:{x => x.ColName.Contains(x.SearchValue)}但是,我希望它是這樣的:{x => x.StrName.Contains("megabrand")}. 我無法訪問屬性的值:ColName 和 SearchValue。如何解決這個問題呢?
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 290 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號