使用条件表达式选择lambda表达式

v11

我想使用条件表达式来选择lambda表达式,像这样:

xxxx.UsingFactory(
hasProofing? ( ()=>new ProofingA() ) : ( () => new ProofingB() )
);

但是,它向我显示了错误。因此,如果我想做这件事,应该怎么做。

错误详情:

在“ lambda表达式”和“ lambda表达式”之间没有隐式转换

格罗夫斯NL

您需要显式转换至少一个lambda。例如,如果只是一个Action,则可以使用以下代码:

xxxx.UsingFactory(
    hasProofing ? (Action)(() => new ProofingA()) : () => new ProofingB()
);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章