public async Task <RenameFarmPayload> RenameFarmAsync( RenameFarmInput input, [ScopedService] AnimalFarmDbContext db, CancellationToken token) { var farm = await db.Farms.FindAsync(input.Id); if (farm is null) { return(new RenameFarmPayload( new List <UserError> { new("Farm not found.", "ANIMAL_NOT_FOUND") },
public async Task <UpdateAnimalPayload> UpdateAnimalAsync( UpdateAnimalInput input, [ScopedService] AnimalFarmDbContext db, [Service] ITopicEventSender eventSender, CancellationToken token) { var animal = await db.Animals.FindAsync(input.Id); if (animal is null) { return(new UpdateAnimalPayload( new List <UserError> { new("Animal not found.", "ANIMAL_NOT_FOUND") },
public async Task <AddAnimalPayload> AddAnimalAsync( AddAnimalInput input, [ScopedService] AnimalFarmDbContext db, [Service] ITopicEventSender eventSender, CancellationToken token) { var animal = new Animal { Name = input.Name, Species = input.Species, FarmId = input.FarmId }; await db.Animals.AddAsync(animal, token); await db.SaveChangesAsync(token); await eventSender.SendAsync(nameof(AnimalSubscriptions.OnAnimalCreatedAsync), animal.Id, token); return(new AddAnimalPayload(animal, input.ClientMutationId)); }
public IQueryable <Farm> GetFarms([ScopedService] AnimalFarmDbContext db) => db.Farms;
public IQueryable <Animal> GetAnimals([ScopedService] AnimalFarmDbContext db) => db.Animals;
// anything that returns IQueryable public IQueryable <Person> GetPersons([ScopedService] AnimalFarmDbContext db) => db.Persons;