public async Task <IActionResult> BulkSelect(int num)
        {
            using (var db = new AppDb())
            {
                var time = DateTime.Now;
                await db.Connection.OpenAsync();

                var query  = new BlogPostQuery(db);
                var reader = await query.LatestPostsCmd(num).ExecuteReaderAsync();

                var numRead = 0;
                while (await reader.ReadAsync())
                {
                    var post = new BlogPost(db)
                    {
                        Id      = await reader.GetFieldValueAsync <int>(0),
                        Title   = await reader.GetFieldValueAsync <string>(1),
                        Content = await reader.GetFieldValueAsync <string>(2)
                    };
                    numRead++;
                }

                var timing = $"Async: Read {numRead} records in " + (DateTime.Now - time);
                Console.WriteLine(timing);
                return(new OkObjectResult(timing));
            }
        }
        public IActionResult Get()
        {
            Db.Connection.Open();
            var query  = new BlogPostQuery(Db);
            var result = query.LatestPostsAsync();

            return(new OkObjectResult(result));
        }
        public async Task <IActionResult> DeleteAll()
        {
            await Db.Connection.OpenAsync();

            var query = new BlogPostQuery(Db);
            await query.DeleteAllAsync();

            return(new OkResult());
        }
        public async Task <IActionResult> GetLatest()
        {
            await Db.Connection.OpenAsync();

            var query  = new BlogPostQuery(Db);
            var result = await query.LatestPostsAsync();

            return(new OkObjectResult(result));
        }
Example #5
0
 public IActionResult DeleteAll()
 {
     using (var db = new AppDb())
     {
         db.Connection.Open();
         var query = new BlogPostQuery(db);
         query.DeleteAll();
         return(new OkResult());
     }
 }
Example #6
0
        public async Task <IActionResult> GetRoleWithoutPermissionById(int id)
        {
            await Db.Connection.OpenAsync();

            var query = new BlogPostQuery(Db);

            var result = await query.getRoleWithoutPermissionByIdInformation(id);

            return(new OkObjectResult(result));
        }
Example #7
0
 public IActionResult GetLatest()
 {
     using (var db = new AppDb())
     {
         db.Connection.Open();
         var query  = new BlogPostQuery(db);
         var result = query.LatestPosts();
         return(new OkObjectResult(result));
     }
 }
Example #8
0
        public async Task <IActionResult> GetPermissionInfo()
        {
            await Db.Connection.OpenAsync();

            var query = new BlogPostQuery(Db);

            var result = await query.getPermissionInformation();

            return(new OkObjectResult(result));
        }
        public async Task <IActionResult> DeleteAll()
        {
            using (var db = new AppDb())
            {
                await db.Connection.OpenAsync();

                var query = new BlogPostQuery(db);
                await query.DeleteAllAsync();

                return(new OkResult());
            }
        }
        public async Task <IActionResult> GetLatest()
        {
            using (var db = new AppDb())
            {
                await db.Connection.OpenAsync();

                var query  = new BlogPostQuery(db);
                var result = await query.LatestPostsAsync();

                return(new OkObjectResult(result));
            }
        }
Example #11
0
        public async Task <IActionResult> DeletePerm(int id)
        {
            await Db.Connection.OpenAsync();

            var query  = new BlogPostQuery(Db);
            var result = await query.deleteUserInformationByPermId(id);

            if (result is null)
            {
                return(new NotFoundResult());
            }
            return(new OkObjectResult(result));
        }
        public async Task <IActionResult> GetOne(int id)
        {
            await Db.Connection.OpenAsync();

            var query  = new BlogPostQuery(Db);
            var result = await query.FindOneAsync(id);

            if (result is null)
            {
                return(new NotFoundResult());
            }
            return(new OkObjectResult(result));
        }
Example #13
0
        public async Task <IActionResult> DeleteAll()
        {
            // Abrir conexion
            await Db.Connection.OpenAsync();

            // Crear conexion
            var query = new BlogPostQuery(Db);
            // Borrar todo
            await query.DeleteAllAsync();

            // Retornar Ok
            return(new OkResult());
        }
Example #14
0
        public async Task <IActionResult> GetLatest()
        {
            // Abrir una conexion
            await Db.Connection.OpenAsync();

            // Crear una instancia de la clase BlogPostQuery
            var query = new BlogPostQuery(Db);
            // Guardar el resultado de la consulta
            var result = await query.LatestPostAsync();

            // Retornar un ok (200) y el resultado
            return(new OkObjectResult(result));
        }
Example #15
0
        public async Task <IActionResult> DeleteUserRole(int id, int id1)
        {
            await Db.Connection.OpenAsync();

            var query  = new BlogPostQuery(Db);
            var result = await query.deleteUserRoles(id, id1);

            if (result is null)
            {
                return(new NotFoundResult());
            }
            return(new OkObjectResult(result));
        }
Example #16
0
 public IActionResult GetOne(int id)
 {
     using (var db = new AppDb())
     {
         db.Connection.Open();
         var query  = new BlogPostQuery(db);
         var result = query.FindOne(id);
         if (result == null)
         {
             return(new NotFoundResult());
         }
         return(new OkObjectResult(result));
     }
 }
Example #17
0
        public async Task <IActionResult> insertnewUserRole([FromBody] user_role body)
        {
            await Db.Connection.OpenAsync();

            var query  = new BlogPostQuery(Db);
            var result = new user_role();

            result.UserId = body.UserId;
            result.RoleId = body.RoleId;


            await query.insertnewUserRole(result);

            return(new OkObjectResult(result));
        }
Example #18
0
        public async Task <IActionResult> insertnewRolePermission([FromBody] insert_role_permission body)
        {
            await Db.Connection.OpenAsync();

            var query  = new BlogPostQuery(Db);
            var result = new insert_role_permission();

            result.Role_Id       = body.Role_Id;
            result.Permission_id = body.Permission_id;


            await query.insertRolePerm(result);

            return(new OkObjectResult(result));
        }
Example #19
0
        public async Task <IActionResult> insertnewPermission([FromBody] InsertPermission body)
        {
            await Db.Connection.OpenAsync();

            var query  = new BlogPostQuery(Db);
            var result = new InsertPermission();

            //result.id = body.id;
            result.PermissionName = body.PermissionName;


            await query.insertPerm(result);

            return(new OkObjectResult(result));
        }
        public async Task <IActionResult> GetOne(int id)
        {
            using (var db = new AppDb())
            {
                await db.Connection.OpenAsync();

                var query  = new BlogPostQuery(db);
                var result = await query.FindOneAsync(id);

                if (result == null)
                {
                    return(new NotFoundResult());
                }
                return(new OkObjectResult(result));
            }
        }
        public async Task <IActionResult> PutOne(int id, [FromBody] BlogPost body)
        {
            await Db.Connection.OpenAsync();

            var query  = new BlogPostQuery(Db);
            var result = await query.FindOneAsync(id);

            if (result is null)
            {
                return(new NotFoundResult());
            }
            result.Title   = body.Title;
            result.Content = body.Content;
            await result.UpdateAsync();

            return(new OkObjectResult(result));
        }
Example #22
0
 public IActionResult PutOne(int id, [FromBody] BlogPost body)
 {
     using (var db = new AppDb())
     {
         db.Connection.Open();
         var query  = new BlogPostQuery(db);
         var result = query.FindOne(id);
         if (result == null)
         {
             return(new NotFoundResult());
         }
         result.Title   = body.Title;
         result.Content = body.Content;
         result.Update();
         return(new OkObjectResult(result));
     }
 }
Example #23
0
        public async Task <IActionResult> GetOne(int id)
        {
            // Abrir una conexion
            await Db.Connection.OpenAsync();

            // Crear una instancai de la clase blogpostquery
            var query = new BlogPostQuery(Db);
            // Guardar el resultado edel query, se envia el parametro obtenido del url
            var result = await query.FindOneAsync(id);

            // Si returna nullo, retornan NotFound (404)
            if (result is null)
            {
                return(new NotFoundResult());
            }
            // Retornar OK y el resultado
            return(new OkObjectResult(result));
        }
Example #24
0
        public async Task <IActionResult> PutOne(int id, [FromBody] Role body)
        {
            await Db.Connection.OpenAsync();

            body.id = id;
            var query  = new BlogPostQuery(Db);
            var result = await query.FindOneAsync(id);

            if (result is null)
            {
                return(new NotFoundResult());
            }
            // result.id = body.id;
            result.RoleName = body.RoleName;



            await query.UpdateAsync(body);

            return(new OkObjectResult(result));
        }
Example #25
0
        public async Task <IActionResult> DeleteOne(int id)
        {
            // Abrir una conexion
            await Db.Connection.OpenAsync();

            // Crear un query
            var query = new BlogPostQuery(Db);
            // Buscar un post con el id proporcionado
            var result = await query.FindOneAsync(id);

            // Si no existe un resultado, retornar 404
            if (result is null)
            {
                return(new NotFoundResult());
            }
            // Borrar el post
            await result.DeleteAsync();

            // Retornar Ok
            return(new OkResult());
        }
Example #26
0
        public async Task <IActionResult> PutOne(int id, [FromBody] BlogPost body)
        {
            // Abrir una conexion
            await Db.Connection.OpenAsync();

            // Crear un query
            var query = new BlogPostQuery(Db);
            // Buscar un post, con el id proporcionado
            var result = await query.FindOneAsync(id);

            // Si existe un resultado, retornar 404
            if (result is null)
            {
                return(new NotFoundResult());
            }
            // Actualizar las propiedades del post con el contenido en el cuerpo JSON
            result.Title   = body.Title;
            result.Content = body.Content;
            // Actualizar el blog
            await result.UpdateAsync();

            // Retornar Ok y el blog cambiado
            return(new OkObjectResult(result));
        }
Example #27
0
        public static void Run(IAppDb appDb, int iterations, int concurrency, int ops)
        {
            var recordNum = 0;

            async Task InsertOne(IAppDb db)
            {
                var blog = new BlogPost(db)
                {
                    Title   = "Title " + Interlocked.Increment(ref recordNum),
                    Content = "Content " + recordNum
                };
                await blog.InsertAsync();
            }

            var selected = new ConcurrentQueue <BlogPost>();

            async Task SelectTen(IAppDb db)
            {
                var blogPosts = await(new BlogPostQuery(db)).Random10Async(recordNum);

                selected.Enqueue(blogPosts.FirstOrDefault());
            }

            var updatedNum = 0;

            async Task UpdateOne(IAppDb db)
            {
                BlogPost blogPost;

                if (selected.TryDequeue(out blogPost) && blogPost != null)
                {
                    blogPost.Db      = db;
                    blogPost.Content = "Content Updated " + Interlocked.Increment(ref updatedNum);
                    await blogPost.UpdateAsync();
                }
            }

            using (var db = appDb.New())
            {
                db.Connection.Open();
                using (var cmd = db.Connection.CreateCommand())
                {
                    cmd.CommandText = "DELETE FROM BlogPost";
                    cmd.ExecuteNonQuery();
                }
            }

            PerfTest(appDb, InsertOne, "Insert One", iterations, concurrency, ops).GetAwaiter().GetResult();
            using (var db = appDb.New())
            {
                db.Connection.Open();
                using (var cmd = db.Connection.CreateCommand())
                {
                    cmd.CommandText = "SELECT COUNT(*) FROM BlogPost";
                    Console.WriteLine("Records Inserted: " + cmd.ExecuteScalar());
                    Console.WriteLine();
                }
            }

            PerfTest(appDb, SelectTen, "Select Ten", iterations, concurrency, ops).GetAwaiter().GetResult();
            Console.WriteLine("Records Selected: " + selected.Count * 10);
            BlogPost firstRecord;

            if (selected.TryPeek(out firstRecord))
            {
                Console.WriteLine("First Record: " + firstRecord.Content);
            }
            Console.WriteLine();

            PerfTest(appDb, UpdateOne, "Update One", iterations, concurrency, ops).GetAwaiter().GetResult();
            Console.WriteLine("Records Updated: " + updatedNum);
            using (var db = appDb.New())
            {
                db.Connection.Open();
                var firstRecordUpdated = new BlogPostQuery(db).FindOne(firstRecord.Id);
                if (firstRecordUpdated != null)
                {
                    Console.WriteLine("First Record: " + firstRecordUpdated.Content);
                }
            }
        }