次のコードがあります
private readonly RoleManager<IdentityRole> _roleManager;
private async Task DoStuff(MyViewModel viewModel)
{
var roles = await _roleManager.Roles;
var mylist = await _myRepository.SelectAll();
}
ただし、ロール マネージャーがサポートする唯一の方法は
public virtual IQueryable<TRole> Roles { get; }
非同期メソッドではありません。
Githubリファレンス
結果は_roleManager.Roles.ToList()
メソッドのみになり、ToListAsync()
そのため、コードを次のように変更する必要があります
var roles = _roleManager.Roles;
ただし、メソッド自体が非同期であるため、待機しなくなり、予期しない動作が発生するようになりました。
質問:
とにかく、上記の非同期メソッドを引き続き使用できますか