34 lines
925 B
C#
34 lines
925 B
C#
namespace SimpleLIS;
|
|
|
|
using Microsoft.EntityFrameworkCore;
|
|
using SimpleLIS.Models;
|
|
|
|
public class HL7DbContext : DbContext
|
|
{
|
|
public DbSet<Message> Messages { get; set; }
|
|
public DbSet<Patient> Patients { get; set; }
|
|
public DbSet<Observation> Observations { get; set; }
|
|
|
|
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
|
{
|
|
optionsBuilder.UseSqlite("Data Source=hl7.db");
|
|
}
|
|
|
|
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
|
{
|
|
modelBuilder.Entity<Message>()
|
|
.HasKey(m => m.MessageId);
|
|
|
|
modelBuilder.Entity<Patient>()
|
|
.HasKey(p => p.PatientId);
|
|
|
|
modelBuilder.Entity<Observation>()
|
|
.HasKey(o => o.ObservationId);
|
|
|
|
modelBuilder.Entity<Message>()
|
|
.HasMany(m => m.Observations)
|
|
.WithOne(o => o.Message)
|
|
.HasForeignKey(o => o.MessageId);
|
|
}
|
|
}
|