await null
бросит NullReferenceException
. Поэтому, если _user
равно нулю, _user?.DisposeAsync()
вернет null
, а await
сгенерирует.
Вы можете сделать:
if (_user != null)
{
await _user.DisposeAsync();
}
(вам может понадобиться локальная копия _user
, если она может меняться между чтениями)
или
await _user?.DisposeAsync() ?? Task.CompletedTask;