Sto cercando di capire async
e await
. Adesso voglio applicare async
e await
keyword nel mio progetto attuale. La mia struttura di processo è:
//DataAccess
Private List<Users> GetAllUsers()
{
.... ;
return List<Users>
}
//UI
List<Users> UserList=new List<Users>();
private async void Ok_ClickAsync(object sender, RoutedEventArgs e)
{
//I want to select all user ant assign to UserList but currently it not use.
UserList=await BindUser();
}
private async Task<List<Users>> BindUser()
{
List<Users> model=await Task.Run(()=>GetAllUsers());
return model;
}
private void btnSave_Click(object sender, RoutedEventArgs e)
{
//I want to use UserList here and want to validate process
}
Il problema è che se faccio clic su Salva rapidamente il pulsante clic, UserList
è 0
(In realtà UserList
record è superiore a 100.000). Quindi voglio controllare BindUser()
processo è finito o meno prima di fare il processo di validazione in %codice%. Fammi sapere per la soluzione migliore e aiutami a capire Save_Click()
e async
parola chiave. Grazie.