Files
icarus/Icarus/Database/Contexts/ArtistContext.cs
T
2025-04-03 20:35:02 -04:00

43 lines
1.0 KiB
C#

using Microsoft.EntityFrameworkCore;
using Icarus.Models;
namespace Icarus.Database.Contexts;
public class ArtistContext : DbContext
{
public DbSet<Artist> Artists { get; set; }
public ArtistContext(DbContextOptions<ArtistContext> options) : base(options) { }
public ArtistContext(string connString) : base(new DbContextOptionsBuilder<ArtistContext>()
.UseMySQL(connString).Options)
{
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Artist>()
.ToTable("Artist");
modelBuilder.Entity<Artist>(entity =>
{
entity.HasKey(e => e.Id);
entity.Property(e => e.Id)
.HasColumnType("binary(16)");
});
}
public Artist RetrieveRecord(Artist artist)
{
return Artists.FirstOrDefault(arst => arst.Id == artist.Id)!;
}
public bool DoesRecordExist(Artist artist)
{
return Artists.FirstOrDefault(arst => arst.Id == artist.Id) != null ? true : false;
}
}