- 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.
推薦閱讀
- Learn TypeScript 3 by Building Web Applications
- Python數據分析入門與實戰
- 垃圾回收的算法與實現
- Rust實戰
- C語言程序設計
- Ray分布式機器學習:利用Ray進行大模型的數據處理、訓練、推理和部署
- Linux:Embedded Development
- Mastering React
- 打開Go語言之門:入門、實戰與進階
- Python Web自動化測試設計與實現
- Java EE 8 and Angular
- Node.js 6.x Blueprints
- ANSYS FLUENT 16.0超級學習手冊
- 一覽眾山小:ASP.NET Web開發修行實錄
- Moodle 3.x Developer's Guide