我有一个C#应用程序。在这个应用程序中,我有一个带有许多方法的类。我正在尝试使更多代码更易于管理。为了做到这一点,我试图得到这样的东西:
public class MyClass
{
public async Task Run()
{
// This works
Func<Task> task1 = async () =>
{
Thread.Sleep(5000);
await Task.CompletedTask;
};
await task1();
// Is there a way to do something like this?
var task2 = Task2;
await task2();
}
public async Task Task2()
{
Thread.Sleep(3000);
await Task.CompletedTask;
}
}
我知道有人会回答“您为什么不只说await Task2()
?”。在进行有效观察的同时,我试图找出如何获得对该方法的引用,以便可以将其传递给另一个方法。我想保持我的代码示例简洁。
有没有办法让C#函数获得委托?我知道我可以用JavaScript做到这一点。但是,我不确定如何在C#中执行此操作。谢谢!