using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Logging; using PARR.DAL.Context; using PARR.DAL.Models; using PARR.DAL.Services.Abstracts; using PARR.DAL.Services.Interfaces; namespace PARR.DAL.Services.Implementations { internal class UserService : BaseService, IUserService { private readonly DataContext dataContext; public UserService(DataContext dataContext, ILogger logger) : base(logger) { this.dataContext = dataContext; } protected override DbSet EntitySet => dataContext.Users; protected override DataContext EntitiContext => dataContext; public async Task GetByIpWithRolesAsync(string ipAddress) { return await EntitySet .Include(t => t.Roles).ThenInclude(t => t.Role) .FirstOrDefaultAsync(t => t.Ip == ipAddress); } } }