我是 lambda 新手。如果我的问题很简单,请原谅。
我有一个使用反射来设置某些类型的属性的方法:
public void WriteId(object obj, int id) {
var type = obj.GetType();
var prop = type.GetProperties(BindingFlags.Public | BindingFlags.Instance)
.Where(p => p.CanRead && p.CanWrite)
.Where(p => p.Name == "Id")
.Where(p.PropertyType == typeof(int))
.FirstOrDefault();
if(prop != null)
prop.SetValue(obj, id, null);
}
你能告诉我如何创建一个做同样工作的 lambda 吗?实际上我想为每种类型创建一个 lambda,编译它,然后缓存它。提前致谢。