static async Task Main(string[] args) { var configuration = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) .AddJsonFile("appsettings.local.json", optional: true, reloadOnChange: true) .AddEnvironmentVariables() .AddCommandLine(args) .Build(); var optionsBuilder = new DbContextOptionsBuilder <ShipyardDbContext>() .UseSqlServer(configuration.GetConnectionString("SqlDatabase"), options => options .EnableRetryOnFailure()); await using var ctx = new ShipyardDbContext(optionsBuilder.Options); await ctx.Database.MigrateAsync(); }
private static void SeedSqlDb() { var mongoDbName = "MongoShipyard"; var mongoContext = new MongoContextProvider(); mongoContext.Connect(mongoDbName); var sqlContext = new ShipyardDbContext(); var sqlSeeder = new SeedSql(sqlContext, mongoContext); sqlSeeder.SeedSqlFromMongo(); }
private static void MsSqlToJsonDemo() { var db = new ShipyardDbContext(); var resultedCollection = new List<Pilot>(); foreach (var entry in db.Pilots) { resultedCollection.Add(entry); } var DestinationDirectory = "../../Json-Reports/"; var destDir = Directory.CreateDirectory(DestinationDirectory); Export.SqlServerToJson(resultedCollection, destDir); var filesList = new List<string>(); var files = Export.HuntFiles(DestinationDirectory, filesList); var objsToMySql = Export.JsonToObj(files); Export.JsonToMySql(objsToMySql); }
private static void MsSqlDemo() { var db = new ShipyardDbContext(); db.Pilots.Add(new Pilot { Name = "Pesho", Position = "Grand-Admiral" }); //db.Upgrades.Add(new Upgrade //{ // Name = "Engine-booster", // Price = 1000.00M, // UpgradesToId = 2 //}); db.SaveChanges(); System.Console.WriteLine("Done"); }
public SeedSql(ShipyardDbContext sqlContext, MongoContextProvider mongoContext) { this.CurrentContext = sqlContext; this.MongoContext = mongoContext; }
private void RenewDbContext() { CurrentContext.SaveChanges(); CurrentContext.Dispose(); CurrentContext = new ShipyardDbContext(); }