- Mastering Entity Framework Core 2.0
- Prabhakaran Anbazhagan
- 182字
- 2021-07-02 21:16:40
Configuring data context
The auto-generated database context (which is presented in the following code) will include:
- Virtual properties of the tables/entities to hold corresponding data.
- The OnConfiguring method, which will configure EF with the database.
- The OnModelCreating method, which will ensure certain constraints and relationships are built while creating the database. It would not be used in our database-first approach as we already have them in place.
The database context should contain the following configuration:
public partial class MasteringEFCoreDbFirstContext : DbContext
{
public virtual DbSet<Blog> Blog { get; set; }
public virtual DbSet<Post> Post { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder
optionsBuilder)
{
if (!optionsBuilder.IsConfigured)
{
// Move this connection string to config file later
ptionsBuilder.UseSqlServer(@"Server=
(localdb)\mssqllocaldb;Database=MasteringEFCoreDbFirst;
Trusted_Connection=True;");
}
}
protected override void OnModelCreating(ModelBuilder
modelBuilder)
{
modelBuilder.Entity<Post>(entity =>
{
entity.HasIndex(e => e.BlogId).HasName("IX_Post_BlogId");
entity.Property(e => e.Title).IsRequired();
entity.HasOne(d => d.Blog).WithMany(p => p.Post)
.HasForeignKey(d => d.BlogId);
});
}
}
In case you have noticed the warning, we need to remove the section using dependency injection, which will be performed in the Registering Context in Services (.NET Core DI) section.
推薦閱讀
- Instant Testing with CasperJS
- 程序員面試白皮書
- 程序設計與實踐(VB.NET)
- JavaScript:Functional Programming for JavaScript Developers
- 編寫高質量代碼:改善Python程序的91個建議
- 數據結構(Python語言描述)(第2版)
- Windows Presentation Foundation Development Cookbook
- Mastering KnockoutJS
- Teaching with Google Classroom
- Android系統原理及開發要點詳解
- Getting Started with Python and Raspberry Pi
- Android群英傳
- Lift Application Development Cookbook
- 編程改變生活:用Python提升你的能力(進階篇·微課視頻版)
- Node.js從入門到精通