source: FarmatikoData/FarmatikoDataContext.cs@ db484c9

Last change on this file since db484c9 was db484c9, checked in by DimitarSlezenkovski <dslezenkovski@…>, 4 years ago

Fix bugs

  • Property mode set to 100644
File size: 2.7 KB
Line 
1using FarmatikoData.Models;
2using Microsoft.EntityFrameworkCore;
3
4namespace FarmatikoData
5{
6 public class FarmatikoDataContext : DbContext
7 {
8 public FarmatikoDataContext(DbContextOptions options) : base(options) { }
9
10
11 public DbSet<HealthFacility> HealthFacilities { get; set; }
12 public DbSet<HealthcareWorker> HealthcareWorkers { get; set; }
13 public DbSet<Pharmacy> Pharmacies { get; set; }
14 public DbSet<PharmacyHead> PharmacyHeads { get; set; }
15 public DbSet<Pandemic> Pandemics { get; set; }
16 public DbSet<Medicine> Medicines { get; set; }
17 public DbSet<RequestPharmacyHead> PHRequests { get; set; }
18 public DbSet<User> Users { get; set; }
19 public DbSet<PharmacyHeadMedicine> PharmacyHeadMedicines { get; set; }
20
21 protected override void OnModelCreating(ModelBuilder modelBuilder)
22 {
23 modelBuilder.UseSerialColumns();
24
25 modelBuilder.Entity<PharmacyHead>()
26 .ToTable("PharmacyHeads");
27
28 modelBuilder.Entity<Medicine>()
29 .ToTable("Medicines");
30
31 modelBuilder.Entity<Pharmacy>()
32 .ToTable("Pharmacies");
33
34 modelBuilder.Entity<PharmacyHeadMedicine>()
35 .ToTable("PharmacyHeadMedicines");
36
37 modelBuilder.Entity<RequestPharmacyHead>()
38 .ToTable("PHRequests");
39
40 modelBuilder.Entity<Medicine>()
41 .Property(x => x.Id)
42 .HasIdentityOptions(startValue: 1);
43
44 modelBuilder.Entity<Pharmacy>()
45 .Property(x => x.Id)
46 .HasIdentityOptions(startValue: 1);
47
48 modelBuilder.Entity<PharmacyHead>()
49 .Property(x => x.Id)
50 .HasIdentityOptions(startValue: 1);
51
52 modelBuilder.Entity<PharmacyHeadMedicine>()
53 .Property(x => x.Id)
54 .HasIdentityOptions(startValue: 1);
55
56 modelBuilder.Entity<RequestPharmacyHead>()
57 .Property(x => x.Id)
58 .HasIdentityOptions(startValue: 1);
59
60 /*modelBuilder.Entity<User>()
61 .Property(x => x.Id)
62 .HasIdentityOptions(startValue: 1);
63
64 modelBuilder.Entity<PharmacyHeadMedicine>()
65 .HasKey(phm => new { phm.PheadId, phm.MedicineId });
66
67 modelBuilder.Entity<PharmacyHead>()
68 .HasMany<Pharmacy>(p => p.Pharmacy)
69 .WithOne(p => p.PharmacyHead)
70 .HasForeignKey();
71
72 modelBuilder.Entity<Pharmacy>()
73 .HasOne<PharmacyHead>(p => p.PharmacyHead)
74 .WithMany(p => p.Pharmacy);
75 */
76
77 base.OnModelCreating(modelBuilder);
78 }
79 }
80}
Note: See TracBrowser for help on using the repository browser.