0
我有以下產品型號和字典SumGetters如何使用Expression通過特定字符串獲取Func <ProductModel,int>?
public class ProductModel
{
public int Id { get; internal set; }
public int Column1 { get; internal set; }
public int Column2 { get; internal set; }
public int Column3 { get; internal set; }
}
private static readonly Dictionary<string, Func<ProductModel, int>> SumGetters = new Dictionary<string, Func<ProductModel, int>>
{
{ "Column1", model => model.Column1},
{ "Column2", model => model.Column2},
{ "Column3", model => model.Column3},
};
我嘗試從字符串獲得特定的列。
Ex。如果字符串是Column1,那麼得到model=>model.Column1
如何使用表達式樹來實現這個功能?
Func<ProductModel, int> sumGetter;
var isGettingSumGetter = SumGetters.TryGetValue(request.Column, out sumGetter);
因此,給定一個「Column1」字符串和一個「ProductModel」類型,你需要一個'model => model.Column1'表達式? – xanatos
@xanatos是的,你知道了。 – letitbe