Files
MilkyShots/Lactose/Repositories/UserRepository.cs

24 lines
932 B
C#

using Lactose.Context;
using Lactose.Models;
using Microsoft.EntityFrameworkCore.ChangeTracking;
namespace Lactose.Repositories;
public class UserRepository(LactoseDbContext context) : IUserRepository {
public void Dispose() => context.DisposeAsync();
public async Task<IEnumerable<User>> GetAllAsync() => await context.Users.ToListAsync();
public async void InsertAsync(User user) => await context.Users.AddAsync(user);
public async void SaveAsync() => await context.SaveChangesAsync();
public async Task<User?> FindAsync(Guid id) => await context.Users.FindAsync(id);
public async Task<User?> FindByEmailAsync(string email) => await context.Users.FirstOrDefaultAsync(u => u.Email == email);
public async Task<User?> FindByUsernameAsync(string username) => await context.Users.FirstOrDefaultAsync(u => u.Username == username);
public void Delete(User user) => context.Users.Remove(user);
}