public static OrmLiteConnectionFactory GetDbConnectionFromConfig() { var cs = ConfigurationManager.AppSettings.Get("ConnectionString_SQLite"); cs = cs.Replace("{PATH}", Application.StartupPath); SqliteOrmLiteDialectProvider dialect = SqliteOrmLiteDialectProvider.Instance; dialect.UseUnicode = true; dialect.NamingStrategy = new ABNamingStrategy(); return(new OrmLiteConnectionFactory(cs, false, dialect)); }
public void TestFixtureSetUp() { _dialectProvider = new SqliteOrmLiteDialectProvider(); }
public override void Configure(Funq.Container container) { JsConfig.EmitCamelCaseNames = true; JsConfig.DateHandler = JsonDateHandler.ISO8601; Plugins.Add(new CorsFeature()); this.PreRequestFilters.Add((httpReq, httpRes) => { if (httpReq.HttpMethod == "OPTIONS") { httpRes.AddHeader("Access-Control-Allow-Methods", "PUT, DELETE, POST, GET, OPTIONS"); httpRes.AddHeader("Access-Control-Allow-Headers", "X-Requested-With, Content-Type"); httpRes.EndRequest(); } }); var embedKey = ConfigurationManager.AppSettings["EmbedKey"]; var connectionString = ConfigurationManager.AppSettings["AppDbPath"].MapAbsolutePath(); Interval = int.Parse(ConfigurationManager.AppSettings["Interval"]); var dialectProvider = new SqliteOrmLiteDialectProvider(); var dbFactory = new OrmLiteConnectionFactory(connectionString, dialectProvider); container.Register <IEmbedlyClient>(new EmbedlyClient(embedKey)); container.Register <IDbConnectionFactory>(dbFactory); dbFactory.Run(db => { if (!db.TableExists("Menu")) { var modelTypes = typeof(Meal).Assembly.GetTypes() .Where(t => t.Namespace.Contains("Model")); db.DropAndCreateTables(modelTypes.ToArray()); var exp = db.CreateExpression <Menu>(); var menu = db.FirstOrDefault(exp); if (menu == null) { menu = new Menu(); menu.intervalStart = DateTime.Now.AddDays(-(int)DateTime.Now.DayOfWeek).Date; menu.intervalEnd = DateTime.Now.Date; db.Insert(menu); } var newMeals = new List <Meal>(); var existingMeals = new List <Meal>(); for (int i = 0; i < Interval; i++) { var meal = db.GetByIdOrDefault <Meal>(i + 1); if (meal == null) { meal = new Meal(); newMeals.Add(meal); } else { existingMeals.Add(meal); } meal.menuId = menu.id; meal.date = DateTime.Now.AddDays(-Interval + i).Date; meal.title = "test meal " + i; meal.url = "http://localhost/meal/" + i; } db.InsertAll(newMeals); db.UpdateAll(existingMeals); } }); }