我正在尝试使用以下格式创建更新功能:
public int Update(
Item Item,
Expression<Func<Item, object>> selector)
如何读取选择器中选择的属性?我需要属性的名称。
这是因为我想使更新功能更智能,因此它仅更新必须更新的内容。它用于sql,它是一个存储库函数。
谢谢。
假设您不希望验证表达式是否实际返回属性值,则可以使用:
public int Update(Item Item, params Expression<Func<Item, object>>[] selectors)
{
var propertyNames = selectors
.Select(expression => ((MemberExpression)action.Body).Member.Name);
}