当与现有框架的工作,有时你需要在通常不执行任何操作由原始开发者添加的扩展点的动作代表通过。 例:
var anObject = new Foo(() => { });
想必在Foo对象将调用此委托在一段时间。 我的目标是消除使用{},因为我的风格决定了{}必须对自己的,独立的线,我有点强迫症和讨厌冗长的,如果我没有要。
当与该返回值的动作处理,这是简单enough-你可以提供一个表达,而不是一个声明(从而消除了大括号。)实施例:
var anObject = new Foo(() => string.Empty);
所以,我认为这个问题是两个部分...
.NET是否有任何排序默认为空行动? 是否有提供一个空的表达式拉姆达语法糖,比另外{}?
当前的解决方案我倾向于是定义在之前的分配委托以避免必须使用一个函数调用内部表达拉姆达。