コード例 #1
0
ファイル: Program.cs プロジェクト: Polylytics/dashing
        private static void SetupDatabase() {
            var d = new Dashing.Engine.Dialects.SqlServerDialect();
            var dtw = new DropTableWriter(d);
            var ctw = new CreateTableWriter(d);
            var dropTables = dashingConfig.Maps.Select(dtw.DropTableIfExists);
            var createTables = dashingConfig.Maps.Select(ctw.CreateTable);
            var sqls = dropTables.Concat(createTables).ToArray();

            using (var setupSession = dashingConfig.BeginSession()) {
                foreach (var sql in sqls) {
                    setupSession.Dapper.Execute(sql);
                }

                var r = new Random();
                var users = new List<User>();
                for (var i = 0; i < 100; i++) {
                    var user = new User();
                    users.Add(user);
                    setupSession.Insert(user);
                }

                var blogs = new List<Blog>();
                for (var i = 0; i < 100; i++) {
                    var blog = new Blog();
                    blogs.Add(blog);
                    setupSession.Insert(blog);
                }

                var posts = new List<Post>();
                for (var i = 0; i <= 500; i++) {
                    var userId = r.Next(100);
                    var blogId = r.Next(100);
                    var post = new Post { Author = users[userId], Blog = blogs[blogId], Title = Guid.NewGuid().ToString("N") };
                    setupSession.Insert(post);
                    posts.Add(post);
                }

                for (var i = 0; i < 5000; i++) {
                    var comment = new Comment { Post = posts[r.Next(500)], User = users[r.Next(100)] };
                    setupSession.Insert(comment);
                }

                var tags = new List<Tag>();
                for (var i = 0; i < 100; i++) {
                    var tag = new Tag { Content = "Tag" + i };
                    tags.Add(tag);
                    setupSession.Insert(tag);
                }

                for (var i = 0; i < 5000; i++) {
                    var postTag = new PostTag { Post = posts[r.Next(500)], Tag = tags[r.Next(100)] };
                    setupSession.Insert(postTag);
                }

                setupSession.Complete();
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: gitter-badger/dashing
        private static void SetupDatabase()
        {
            var d            = new Dashing.Engine.Dialects.SqlServerDialect();
            var dtw          = new DropTableWriter(d);
            var ctw          = new CreateTableWriter(d);
            var dropTables   = dashingConfig.Maps.Select(dtw.DropTableIfExists);
            var createTables = dashingConfig.Maps.Select(ctw.CreateTable);
            var sqls         = dropTables.Concat(createTables).ToArray();

            using (var setupSession = dashingConfig.BeginSession()) {
                foreach (var sql in sqls)
                {
                    setupSession.Dapper.Execute(sql);
                }

                var r     = new Random();
                var users = new List <User>();
                for (var i = 0; i < 100; i++)
                {
                    var user = new User();
                    users.Add(user);
                    setupSession.Insert(user);
                }

                var blogs = new List <Blog>();
                for (var i = 0; i < 100; i++)
                {
                    var blog = new Blog();
                    blogs.Add(blog);
                    setupSession.Insert(blog);
                }

                var posts = new List <Post>();
                for (var i = 0; i <= 500; i++)
                {
                    var userId = r.Next(100);
                    var blogId = r.Next(100);
                    var post   = new Post {
                        Author = users[userId], Blog = blogs[blogId], Title = Guid.NewGuid().ToString("N")
                    };
                    setupSession.Insert(post);
                    posts.Add(post);
                }

                for (var i = 0; i < 5000; i++)
                {
                    var comment = new Comment {
                        Post = posts[r.Next(500)], User = users[r.Next(100)]
                    };
                    setupSession.Insert(comment);
                }

                var tags = new List <Tag>();
                for (var i = 0; i < 100; i++)
                {
                    var tag = new Tag {
                        Content = "Tag" + i
                    };
                    tags.Add(tag);
                    setupSession.Insert(tag);
                }

                for (var i = 0; i < 5000; i++)
                {
                    var postTag = new PostTag {
                        Post = posts[r.Next(500)], Tag = tags[r.Next(100)]
                    };
                    setupSession.Insert(postTag);
                }

                setupSession.Complete();
            }
        }