Выполнение нескольких запросов к базе данных EntityFramework параллельно

Я пытаюсь запустить 3 дБ запросов параллельно, но я не уверен, что я делаю это правильно.

Я сделал 3 функции, каждая из которых делает запрос к БД.

    private static async Task<string> getAccountCodeAsync(string deviceId)
    {
        long deviceIdLong = long.Parse(deviceId);
        using (var db = new NetworksEntities())
        {
            return db.Devices.Where(x => x.DeviceId == deviceIdLong).Select(x => x.AccountCode).FirstOrDefault();
        }
    }

    private static async Task<string> getDeviceTypeAsync(string deviceId)
    {
        long deviceIdLong = long.Parse(deviceId);
        using (var db = new NetworksEntities())
        {
            return db.Devices.Where(x => x.DeviceId == deviceIdLong).Select(x => x.DeviceType).FirstOrDefault().DeviceType;
        }
    }

    private static async Task<string> getUserNameAsync(string userId)
    {
        int userIdInt;
        Int32.TryParse(userId, out userIdInt);
        using (var db = new NetworksEntities())
        {
            return db.Users.Where(x => x.UserId == userIdInt).Select(x => x.Email).FirstOrDefault();
        }
    }   

Затем я в своем коде запускаю три задачи:

    var TaskAccountCode = await getAccountCodeAsync(deviceId);
    var TaskDeviceType = await getDeviceTypeAsync(deviceId);
    var TaskUsername = await getUserNameAsync(userId);
    await Task.WhenAll();   
    //use the results from my 3 tasks to make a new insert into the db.

Является ли то, что я делаю, на самом деле параллельно выполняю мои запросы 3 дБ?

РЕДАКТИРОВАТЬ:

    private static async Task<string> getAccountCodeAsync(string deviceId)
    {
        long deviceIdLong = long.Parse(deviceId);
        using (var db = new NetworksEntities())
        {               
            return db.Devices.Where(x => x.DeviceId == deviceIdLong).Select(x => x.AccountCode).FirstOrDefaultAsync();
        }
    }

Ответы на вопрос(2)

Ваш ответ на вопрос