marco.pms.api/Marco.Pms.DataAccess/Repository/ActivityMasterRepository.cs

48 lines
1.5 KiB
C#

using Marco.Pms.DataAccess.Data;
using Marco.Pms.DataAccess.Repository;
using Marco.Pms.DataAccess.Repository.IRepository;
using Marco.Pms.Model.Entitlements;
using Marco.Pms.Model.Projects;
using Microsoft.EntityFrameworkCore;
using System.Linq.Expressions;
using System.Linq;
namespace BulkyBook.DataAccess.Repository
{
public class ActivityMasterRepository : Repository<ActivityMaster>, IActivityMasterRepository
{
private readonly ApplicationDbContext _context;
public ActivityMasterRepository(ApplicationDbContext context) : base(context)
{
_context = context;
}
public void Update(ActivityMaster status)
{
_context.ActivityMasters.Update(status);
}
public Task<List<ActivityMaster>> GetAllAsync(Expression<Func<ActivityMaster, bool>>? filter = null, string? includeProperties = null)
{
IQueryable<ActivityMaster> query = _context.ActivityMasters;
if (filter != null)
{
query.Where(filter);
}
if (!string.IsNullOrEmpty(includeProperties))
{
foreach (var includeProp in includeProperties.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
{
query = query.Include(includeProp);
}
}
return query.ToListAsync();
// return await _context.Projects.ToListAsync(); ;
}
}
}