Perhaps you could make this public async Task EnsureOpenConnection() the have the caller catch any specific errors you might want to check for.