Ren*_*eep 4 c# winforms parse-platform
这是我创建的异步函数,这里在将这个函数强加到按钮上时出现错误.
public async Task<bool> Login(string UserName, string Password)
{
try
{
ParseUser User = await ParseUser.LogInAsync(UserName, Password);
System.Windows.Forms.MessageBox.Show(User.ObjectId);
var currentUser = ParseUser.CurrentUser;
return true;
}
catch (Exception ex)
{
System.Windows.Forms.MessageBox.Show(ex.Message);
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
调用时收到错误.
private void btnLogin_Click(object sender, EventArgs e)
{
if (Login(txtUserName.Text,txtPassword.Text))
{
MessageBox.Show("Login Success");
}
}
Run Code Online (Sandbox Code Playgroud)
您需要异步等待这样的Login方法:
private async void btnLogin_Click(object sender, EventArgs e)
{
if (await Login(txtUserName.Text,txtPassword.Text))
{
MessageBox.Show("Login Success");
}
}
Run Code Online (Sandbox Code Playgroud)
现在,此事件处理程序是异步的(通过使用async关键字)并且它异步地等待该Login方法(通过使用await关键字).
请注意,一般情况下,不建议使用async void方法.但是,此规则的一个例外是事件处理程序.所以这段代码很好.
| 归档时间: |
|
| 查看次数: |
1771 次 |
| 最近记录: |