这是最简洁的代码版本如下所示?有没有办法缩短它?任何语法糖?除了var
,我知道var
。
Lazy<OrderEventItem[]> orderEventItems = new Lazy<OrderEventItem[]>(delegate
{
return .......;
});
答案 0 :(得分:2)
var orderEventItems = new Lazy<OrderEventItem[]>(() => ...);
如果你真的想摆脱new Lazy<OrderEventItem[]>
,你可以创建一个通用的静态辅助方法:
static Lazy<T> CreateLazy<T>(Func<T> f)
{
return new Lazy<T>(f);
}
然后您的行变为:
var orderEventItems = CreateLazy(() => ...);
尽管如此,我发现它的可读性低于第一种方法。