using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; using System.Linq; using UnivateProperties_API.Containers.Property; using UnivateProperties_API.Context; using UnivateProperties_API.Model.Misc; namespace UnivateProperties_API.Repository.Misc { public class CarouselRepository : IRepository { private readonly DataContext dBContext; public CarouselRepository(DataContext _dBContext) { dBContext = _dBContext; } public List Get(Func where) { var CarouselList = dBContext.Carousel.Where(where).ToList(); foreach (var item in CarouselList) { if (!string.IsNullOrEmpty(item.Image) && !item.Image.StartsWith("data:image")) item.Image = ImageFormatter.ImageToBase64(item.Image); } return CarouselList; } public List GetAll() { var CarouselList = dBContext.Carousel.ToList(); foreach (var item in CarouselList) { if (!string.IsNullOrEmpty(item.Image) && !item.Image.StartsWith("data:image")) item.Image = ImageFormatter.ImageToBase64(item.Image); } return CarouselList; } public Carousel GetDetailed(Func first) { return dBContext.Carousel.FirstOrDefault(first); } public List GetDetailedAll() { return dBContext.Carousel.ToList(); } public void Insert(Carousel item) { dBContext.Carousel.Add(item); Save(); } public void Insert(IEnumerable items) { foreach (var item in items) { dBContext.Carousel.Add(item); Save(); } } public void Remove(Carousel item) { dBContext.Carousel.Remove(item); Save(); } public void Remove(IEnumerable items) { foreach (var item in items) { dBContext.Carousel.Remove(item); Save(); } } public void RemoveAtId(int item) { var Carousel = Get(x => x.Id == item).FirstOrDefault(); if (Carousel != null) { dBContext.Carousel.Remove(Carousel); Save(); } } public void Save() { dBContext.SaveChanges(); } public void Update(Carousel item) { dBContext.Entry(item).State = EntityState.Modified; Save(); } public int NewId() { // Not sure if properties need it return 0; } } }