using JobsJobsJobs.Shared;
using Microsoft.EntityFrameworkCore;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace JobsJobsJobs.Server.Data
{
///
/// Data extensions for manipulation of continent objects
///
public static class ContinentExtensions
{
///
/// Retrieve all continents
///
/// All continents
public static async Task> AllContinents(this JobsDbContext db) =>
await db.Continents.AsNoTracking().OrderBy(c => c.Name).ToListAsync().ConfigureAwait(false);
///
/// Retrieve a continent by its ID
///
/// The ID of the continent to retrieve
/// The continent matching the ID
public static async Task FindContinentById(this JobsDbContext db, ContinentId continentId) =>
await db.Continents.AsNoTracking()
.SingleAsync(c => c.Id == continentId)
.ConfigureAwait(false);
}
}