public async Task <IActionResult> GetOne(int id)
        {
            await Db.Connection.OpenAsync();

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

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

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

            if (result is null)
            {
                return(new NotFoundResult());
            }
            result.firstName = body.firstName;
            result.lastName  = body.lastName;
            result.username  = body.username;
            result.email     = body.email;
            result.password  = body.password;
            await result.UpdateAsync();

            return(new OkObjectResult(result));
        }