Skip to content

Instantly share code, notes, and snippets.

@Taifunov
Last active September 7, 2019 17:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Taifunov/7db7c19f86e20eca43608605210dd9e9 to your computer and use it in GitHub Desktop.
Save Taifunov/7db7c19f86e20eca43608605210dd9e9 to your computer and use it in GitHub Desktop.
public sealed class MyContext : DbContext
{
public DbSet<PostData> Posts { get; set; }
public DbSet<VoteData> Votes { get; set; }
public MyContext(DbContextOptions<MyContext> options) : base(options)
{
}
public MyContext()
{
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
if (!optionsBuilder.IsConfigured)
{
optionsBuilder.UseSqlite("Data Source = DataDb.db;");
}
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.ApplyConfigurationsFromAssembly(typeof(MyContext).Assembly);
}
public class ContextBaseFactory : IDesignTimeDbContextFactory<MyContext>
{
public MyContext CreateDbContext(string[] args)
{
var optionsBuilder = new DbContextOptionsBuilder<MyContext>();
if (!optionsBuilder.IsConfigured)
{
optionsBuilder.UseSqlite("Data Source = DataDb.db;");
}
return new MyContext(optionsBuilder.Options);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment