我的法典中有一部分是 run白 expressions语,然后我可以汇编和援引。
Something thing;
Expression<Action<Something>> expression = (c => c.DoWork());
Delegate del = expression.Compile();
del.DynamicInvoke(thing);
为了节省执行时间,我将这些汇编的代表储存在一个海滩上,一个<代码>Dictionary<String, Delegate>,钥匙是Mlambda的表述。
cache.Add("(Something)c => c.DoWork()", del);
对于同样的电话,该公司进行罚款。 然而,我认识到,我可以接受相等的拉姆布达斯,例如“d => d.DoWork()”,我实际上应该利用这位代表,我是没有。
我很想知道,是否有一个干净的方法(不是“利用强权”。 替换” 因此,
(c => c.DoWork()
和(d => d.DoWork())
改成<代码>(arg0 => arg0.DoWork(),使用与注射表达方式相类似的一些缩略语。 lam(Type, 姓名)
这是可能的吗? (净水量可包括C#4.0)