我知道,如何在方法中做条件参数等。我遇到的问题是:我继承了一个旧的(但工作)类库(我不允许触摸)。在一个方法中,我们称之为覆盖oldmethod(string, string, string)
的{{1}}。
我无法提交空字符串,因为它会抛出异常。我知道,我可以做一个if-else并检查我的参数然后调用我想要的签名,但是有更简单的内联方式吗?
是否有某种方法可以使用条件签名调用该方法,例如如果其中一个字符串为空,则使用三个参数签名,如果没有为空则使用四个参数一个?
答案 0 :(得分:1)
没有办法让编译器根据运行时值选择一种方法而不是另一种方法。但是你可以很容易地做到这一点。
只需创建一个中间方法,您可以在其中检查要调用的方法:
arrays
答案 1 :(得分:0)
似乎没有其他办法。谢谢大家的建议。 If...then...else
当然是有效的,包装器或扩展也是如此。最后,我使用内联if..then
类似于Patrick的建议。
但这是一种解决方法。不是答案。 : - )