-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDbLibraryContext.cs
33 lines (29 loc) · 1.22 KB
/
DbLibraryContext.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Options;
namespace Library.Model
{
public class DbLibraryContext : DbContext
{
public DbSet<Book> Books { get; set; }
public DbSet<Author> Authors { get; set; }
public DbSet<Reader> Readers { get; set; }
public DbSet<PublishingHouse> PublishingHouses { get; set; }
public DbSet<Borrow> Borrows { get; set; }
public DbSet<User> Users { get; set; }
public DbLibraryContext() { }
public DbLibraryContext(DbContextOptions<DbLibraryContext> options) : base(options)
{
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=Library;Integrated Security=True;Connect Timeout=30;Encrypt=False;Trust Server Certificate=False;Application Intent=ReadWrite;Multi Subnet Failover=False");
}
protected override void OnModelCreating(ModelBuilder builder)
{
builder.Entity<User>()
.HasIndex(user => user.Username)
.IsUnique();
}
}
}