我有几个方法都具有相同的签名(参数和返回值),但不同的名称和方法的内部是不同的.我想传递方法的名称以运行到另一个将调用传入方法的方法.
public int Method1(string)
{
    ... do something
    return myInt;
}
public int Method2(string)
{
    ... do something different
    return myInt;
}
public bool RunTheMethod([Method Name passed in here] myMethodName)
{
    ... do stuff
    int i = myMethodName("My String");
    ... do more stuff
    return true;
}
public bool Test()
{
    return RunTheMethod(Method1);
}
此代码不起作用,但这是我想要做的.我不明白的是如何编写RunTheMethod代码,因为我需要定义参数.
我知道 selenium webdriver 可以做到这一点:
var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10)).Until(ExpectedConditions.VisibilityOfAllElementsLocatedBy(By.ClassName("someclass")));
我不能用我的方法做到这一点吗?例如,我有一种方法可以截取屏幕截图并与另一张图片进行比较。我想等到该方法返回 true。
所以我有这个代码
while (WelcomeScreen(driver) != true)
{
    Thread.Sleep(1000);   
}
我就不能找到更好的解决办法吗?