官术网_书友最值得收藏!

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.

主站蜘蛛池模板: 格尔木市| 郸城县| 孝义市| 新乡县| 蓬溪县| 垫江县| 泸水县| 建阳市| 邯郸市| 随州市| 同江市| 浑源县| 昭通市| 漳平市| 永昌县| 临沭县| 尼木县| 蒙山县| 本溪| 广州市| 清水河县| 嘉峪关市| 连山| 唐河县| 霍林郭勒市| 江都市| 小金县| 黎城县| 砀山县| 渝北区| 定州市| 宾阳县| 综艺| 历史| 克什克腾旗| 明水县| 南乐县| 广元市| 城市| 达孜县| 白水县|