如何在C#中调用一个接一个的方法?

时间:2016-04-20 11:00:59

标签: c# delegates

我想拨打Method2然后Method1。我知道有多种方法可以像Method1(Method2());一样执行此操作 但我只是尝试了下面的代码。 在下面的场景中Method2没有被调用。所以我很想知道这种情况在哪里有用,为什么C#提供了这种机制。

public  delegate void Action();
public static void Method1(Action action)
{

}

static void Main()
{
    Method1(Method2);
    return;
}

public static void Method2()
{ 

}

1 个答案:

答案 0 :(得分:1)

你应该在action调用 Method1

...
public static void Method1(Action action)
{
    // do not forget to validate input for public methods
    if (null == action)  
        throw new ArgumentNullException("action");

    action(); // you should invoke action
}