Files
Microsoft.SelfService.Porta…/Repository/TemplateRepository.cs

77 lines
2.0 KiB
C#

using Microsoft.EntityFrameworkCore;
using Microsoft.SelfService.Portal.Core.API.Context;
using Microsoft.SelfService.Portal.Core.API.Interfaces;
using Microsoft.SelfService.Portal.Core.API.Models;
namespace Microsoft.SelfService.Portal.Core.API.Repository
{
public class TemplateRepository : ITemplateInterface
{
private readonly DataContext _context;
public TemplateRepository(DataContext context)
{
_context = context;
}
public ICollection<TemplateModel> GetTemplates()
{
return _context.Templates
.AsNoTracking()
.ToList();
}
public TemplateModel GetTemplateById(Guid Id)
{
return _context.Templates
.AsNoTracking()
.Where(t => t.Id == Id)
.FirstOrDefault();
}
public bool AddTemplateById(TemplateModel template)
{
_context.Add(template);
return SaveChanges();
}
public bool EditTemplateById(TemplateModel template)
{
_context.Update(template);
return SaveChanges();
}
public bool DeleteTemplateById(TemplateModel template)
{
_context.Remove(template);
return SaveChanges();
}
public bool CheckTemplateById(Guid Id)
{
return _context.Templates
.Any(t => t.Id == Id);
}
public TemplateModel GetTemplateByName(string Name)
{
return _context.Templates
.AsNoTracking()
.Where(t => t.Name == Name)
.FirstOrDefault();
}
public bool CheckTemplateByName(string Name)
{
return _context.Templates
.Any(t => t.Name == Name);
}
public bool SaveChanges()
{
var saved = _context.SaveChanges();
return saved > 0 ? true : false;
}
}
}