public static void Init(TestContext _) { InitFilePath(); AddFirst5000DataRowsToDb(); for (int batchId = 1; batchId < _localDbFiles.Length; batchId++) { var preLocalDbFile = _localDbFiles[batchId - 1]; var localDbFile = _localDbFiles[batchId]; if (!File.Exists(localDbFile)) { File.Copy(preLocalDbFile, localDbFile); using var dbContext = new SqliteDBContext(localDbFile); AddDataRowsHelper.Add1BatchDataRows(dbContext.Table1, batchId); dbContext.SaveChanges(); dbContext.Database.CloseConnection(); } var sharedFolderDbFile = _sharedFolderDbFilePaths[batchId]; if (!File.Exists(sharedFolderDbFile)) { File.Copy(localDbFile, sharedFolderDbFile); } } }
// sqlite migrations are not as good as sql server // https://docs.microsoft.com/en-us/aspnet/core/data/ef-rp/migrations?view=aspnetcore-5.0&tabs=visual-studio public AuthorizeController(ILogger <AuthorizeController> logger, RegistryDemo.Models.SqliteDBContext context) { _logger = logger; _dbContext = context; Console.WriteLine(); Console.WriteLine("Authorize Request Code Initialized"); }
public async Task Reset(IUser User = null) { if (User == null) { await Context.Channel.SendMessageAsync(":x: User not specified: a!currency reset **<@user>**"); return; } if (User.IsBot) { await Context.Channel.SendMessageAsync($":x: Bots don't have {ISetting.Settings.Currency}"); return; } SocketGuildUser User1 = Context.User as SocketGuildUser; if (!User1.GuildPermissions.Administrator) { await Context.Channel.SendMessageAsync($":x: You don't have permission to do this, ask an admin"); return; } await Context.Channel.SendMessageAsync($":tada: {User.Mention} you have been reset by {Context.User.Username}!"); using (var DbContext = new SqliteDBContext()) { DbContext.Currency.RemoveRange(DbContext.Currency.Where(x => x.UserId == User.Id)); await DbContext.SaveChangesAsync(); } }
public void TestFromSharedFolder(int dbFilePathIndex) { using (var dbContext = new SqliteDBContext(_sharedFolderDbFilePaths[dbFilePathIndex])) { var rows = (from i in dbContext.Table1 where i.BatchId == 0 && i.RowNo < 10 select i).ToArray(); dbContext.Dispose(); Assert.AreEqual(10, rows.Count()); } }
public void TestFromLocal(int dbFilePathIndex) { using (var dbContext = new SqliteDBContext(_localDbFiles[dbFilePathIndex])) { var p3s = new string[10]; var rows = (from i in dbContext.Table1 where i.BatchId == 0 && i.RowNo < 10 select i).ToArray(); Assert.AreEqual(10, rows.Length); } }
public static int GetStones(ulong UserId) { using (var DbContext = new SqliteDBContext()) { var count = DbContext.Currency.Where(x => x.UserId == UserId); if (DbContext.Currency.Where(x => x.UserId == UserId).Count() < 1) { return(0); } return(DbContext.Currency.Where(x => x.UserId == UserId).Select(x => x.Account).FirstOrDefault()); } }
public void Add100DataRowsToSharedFolderDb(int dbFilePathIndex) { using var dbContext = new SqliteDBContext(_sharedFolderDbFilePaths[dbFilePathIndex]); var dataRows = new Entity1[100]; for (int i = 0; i < 100; i++) { dataRows[i] = AddDataRowsHelper.CreateDataRow <Entity1>(dbFilePathIndex, i + 5000); } dbContext.AddRange(dataRows); dbContext.SaveChanges(); Assert.AreEqual(100, dbContext.Table1.Where(i => i.BatchId == dbFilePathIndex && i.RowNo >= 5000).Count()); }
private static void AddFirst5000DataRowsToDb() { var dbFile = _localDbFiles[0]; if (!File.Exists(dbFile)) { SqliteDBContext.CopyTempateDBFile(dbFile); using var dbContext = new SqliteDBContext(dbFile); AddDataRowsHelper.Add1BatchDataRows(dbContext.Table1, 0); dbContext.SaveChanges(); dbContext.Database.CloseConnection(); } var sharedDbFile = _sharedFolderDbFilePaths[0]; if (!File.Exists(sharedDbFile)) { File.Copy(dbFile, sharedDbFile); } }
public static async Task SaveStones(ulong UserId, int amount) { using (var DbContext = new SqliteDBContext()) { if (DbContext.Currency.Where(x => x.UserId == UserId).Count() < 1) { DbContext.Currency.Add(new Resources.Database.Currency { UserId = UserId, Account = amount }); } else { Resources.Database.Currency current = DbContext.Currency.Where(x => x.UserId == UserId).FirstOrDefault(); current.Account += amount; DbContext.Currency.Update(current); } await DbContext.SaveChangesAsync(); } }
// sqlite migrations are not as good as sql server // https://docs.microsoft.com/en-us/aspnet/core/data/ef-rp/migrations?view=aspnetcore-5.0&tabs=visual-studio public RegistryQueryController(ILogger <RegistryQueryController> logger, RegistryDemo.Models.SqliteDBContext context) { _logger = logger; _dbContext = context; Console.WriteLine(); context.Database.EnsureCreated(); Console.WriteLine("DB has been Created - pre migrate"); // context.Database.Migrate(); // Console.WriteLine("Post migrate"); if (context.RegisteredObjects.Any()) { Console.WriteLine("context created - we have Registered Objects"); return; } string dbPath = context.Database.GetConnectionString(); string tdPath = "TestData.json"; string testData = System.IO.File.ReadAllText(tdPath, Encoding.UTF8); List <Maas> Ldo; Ldo = GetJsonGenericType <List <Maas> >(testData); foreach (Maas maas in Ldo) { RegisteredObject ro = new RegisteredObject { Name = maas.name, Version = maas.version, Platform = maas.platform, Min_platform = maas.min_platform, Source = maas.source, Jurisdiction = maas.jurisdiction, User_authn = maas.user_authn, DateRegistered = maas.date, Url = maas.url, Trust_registry = maas.trust_registry }; context.Add(ro); } context.SaveChanges(); Console.WriteLine("Completed Creation of base Registered Objtecs"); }
public static void Init(TestContext _) { _localDbFilePaths = new string[10]; _sharedFolderDbFilePaths = new string[10]; for (int i = 0; i < _localDbFilePaths.Length; i++) { _localDbFilePaths[i] = Path.Combine(Properties.Resources.Local, $"{nameof(Add_SqliteDB_BasedOnDifferentDataRowCount_LocalVSSharedFolder_Tests)}{i}{SqliteDBContext.DBFileExtensionName}"); _sharedFolderDbFilePaths[i] = Path.Combine(Properties.Resources.Shared, $"{nameof(Add_SqliteDB_BasedOnDifferentDataRowCount_LocalVSSharedFolder_Tests)}{i}{SqliteDBContext.DBFileExtensionName}"); } for (int i = 0; i < _localDbFilePaths.Length; i++) { SqliteDBContext.CopyTempateDBFile(_localDbFilePaths[i]); using var localDbContext = new SqliteDBContext(_localDbFilePaths[i]); for (int j = 0; j < i + 1; j++) { AddDataRowsHelper.Add1BatchDataRows <Entity1>(localDbContext.Table1, j); } localDbContext.SaveChanges(); File.Copy(_localDbFilePaths[i], _sharedFolderDbFilePaths[i], true); } }
public UsersController(SqliteDBContext context) { _context = context; }