使用带参数的异步任务方法注册新的pageasynctask

时间:2014-03-26 08:34:40

标签: c# asp.net async-await

我在asp.net webforms项目中有这个方法:

private async Task SomeMethod(int accID){ // }

我想在page_load中执行此操作,但我不确定如何处理参数。

protected void Page_Load(object sender, EventArgs e)
    {
        RegisterAsyncTask(new PageAsyncTask(SomeMethod(int accID)));

       // etc
}

2 个答案:

答案 0 :(得分:19)

试试这个:

protected void Page_Load(object sender, EventArgs e)
    {
        RegisterAsyncTask(new PageAsyncTask(() => SomeMethod(accID: 1000)));

       // etc
}

答案 1 :(得分:0)

首先,我知道回答这个问题为时已晚,但这仍然可以帮助其他像我一样挣扎的人。

因此,您可以将异步方法的所有参数设为可选,如下所示:

private async Task SomeMethod(int accID=0){ // }

,然后在页面加载事件中注册任务,如下所示:

RegisterAsyncTask(new PageAsyncTask(() => SomeMethod()));

这对我来说很好。