public void Initialize()
        {
            using (var connection = new SqlConnection(ConnectionString))
            {
                connection.Open();

                var server = new Server(new ServerConnection(connection));

                // get the database
                const string databaseName = "TransactionScopeTests";
                Database transactionScopeTests = server.Databases[databaseName];

                if (null != transactionScopeTests)
                {
                    server.KillDatabase(databaseName);
                }

                transactionScopeTests = new Database(server, databaseName);

                transactionScopeTests.Create(false);

                using (SqlCommand sqlCommand = connection.CreateCommand())
                {
                    // ReSharper disable once AssignNullToNotNullAttribute
                    sqlCommand.CommandText = Resources.CreateTables;

                    sqlCommand.ExecuteNonQuery();
                }
            }
        }
示例#2
0
        public void PolymorphicEnumeration()
        {
            var stgs = new IStorage[]
            {
                new MemoryStorage(),
                //new PersistedMemoryStorage(),
                new FileSystemStorage("fs"),
                //new EsentStorage("esent"),
                new SqlSeverStorage("server=.;database=overdb;integrated security=true"),
            };

            foreach (var stg in stgs)
            {
                using (var db = new Database(stg, null, new GuidIdFactory()))
                {
                    db.Delete(db.GetEnumerable());
                    db.SaveMany(new Animal[]
                    {
                        new Cat(), new Dog(), new Cow(),
                    }.AsEnumerable());

                    var animals = db.GetEnumerable<Animal>();
                    Assert.That(animals.Count(), Is.EqualTo(3), "{0} not polymorphic", stg.GetType().Name);
                }
            }
        }
示例#3
0
 public void SetupSchema()
 {
     using (var db = new Database("database"))
     {
         db.Execute(sql);
     }
 }
示例#4
0
        static void Main()
        {
            DapperExtensions.DapperExtensions.SqlDialect = new SqliteDialect();

            var database = new Database();
            database.Create();
            database.Insert();
            database.SelectAll();
            database.Select();
            database.Paged();
        }
示例#5
0
        public void PolyQueries()
        {
            var stgs = new IStorage[]
            {
                new MemoryStorage(),
                //new PersistedMemoryStorage(),
                new FileSystemStorage("fs"),
                //new EsentStorage("esent"),
                new SqlSeverStorage("server=.;database=overdb;integrated security=true"),
            };

            foreach (var stg in stgs)
            {
                var idx = new Index<Animal, string>(a => a.Sound, keyComparer: StringComparer.OrdinalIgnoreCase);

                using (var db = new Database(stg, indexes: new[] { idx }, idFactory: new GuidIdFactory()))
                {
                    db.Delete(db.GetEnumerable());

                    db.SaveMany(new Animal[]
                    {
                        new Cat(), new Dog(), new Cow(),
                    }.AsEnumerable());

                    var animals = db.Query(idx);
                    Assert.That(animals.Count(), Is.EqualTo(3), "{0} not polymorphic", stg.GetType().Name);
                }
            }
        }