source: iknow-api/Repository/Implementations/UserRepository.cs@ 89eb129

Last change on this file since 89eb129 was c155364, checked in by imbrsk <boris696boris@…>, 11 months ago

added remaining methods to refreshtoken feature

  • Property mode set to 100644
File size: 1.1 KB
Line 
1using iknow_api.Models;
2using iknow_api.Data;
3using iknow_api.Models;
4using Microsoft.EntityFrameworkCore;
5
6namespace iknow_api.Repositories
7{
8 public class UserRepository : IUserRepository
9 {
10 private readonly AppDbContext _context;
11
12 public UserRepository(AppDbContext context)
13 {
14 _context = context;
15 }
16
17 public async Task<bool> UserExistsAsync(string username)
18 {
19 return await _context.User.AnyAsync(u => u.Email == username);
20 }
21
22 public async Task<User?> GetUserByUsernameAsync(string username)
23 {
24 return await _context.User.FirstOrDefaultAsync(u => u.Email == username);
25 }
26 public async Task<User?> GetOnlyUserByIdAsync(int id)
27 {
28 return await _context.User.FirstOrDefaultAsync(u => u.Id == id);
29 }
30 public async Task AddUserAsync(User user)
31 {
32 _context.User.Add(user);
33 await _context.SaveChangesAsync();
34 }
35
36 public async Task<int> GetUsersCountAsync()
37 {
38 return await _context.User.CountAsync();
39 }
40 }
41}
Note: See TracBrowser for help on using the repository browser.