コード例 #1
0
        private DevJoke CreateJoke(int categoryId, string text = null)
        {
            var newJoke = new DevJoke()
            {
                Text       = text ?? "Documentation is like sex.\nWhen it's good, it's very good.\nWhen it's bad, it's better than nothing.",
                CategoryId = categoryId
            };

            return(newJoke);
        }
コード例 #2
0
        public async Task <DevJoke> Update(DevJoke joke)
        {
            using var session = storageFactory.CreateStorageSession();
            var repo   = session.ResolveRepository <IDevJokeRepository>();
            var result = await repo.UpdateDetached(joke).ConfigureAwait(false);

            await session.SaveChanges().ConfigureAwait(false);

            return(result);
        }
コード例 #3
0
        public async Task <DevJoke> Update(DevJoke joke)
        {
            using (var session = StorageFactory.CreateStorageSession())
            {
                var repo   = session.ResolveRepository <IDevJokeRepository>();
                var result = repo.UpdateDetached(joke);
                await session.SaveChanges();

                return(result);
            }
        }
コード例 #4
0
        public async Task <IActionResult> Put(int id, [FromBody] DevJoke value)
        {
            if (value == null || value.Id != id)
            {
                return(BadRequest());
            }

            var joke = await DevJokeService.GetJokeById(id);

            if (joke == null)
            {
                return(NotFound());
            }

            var updatedPkData = await DevJokeService.Update(value);

            return(new ObjectResult(updatedPkData));
        }
コード例 #5
0
        public async Task <ActionResult> Post([FromBody] DevJoke value)
        {
            if (value == null)
            {
                return(BadRequest("Public key data is null."));
            }

            try
            {
                var joke = await DevJokeService.Create(value);

                if (joke == null)
                {
                    return(BadRequest());
                }
                return(CreatedAtRoute(new { id = joke.Id }, joke));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #6
0
        private async Task <DevJoke> GetRandomJoke()
        {
            DevJoke devJoke = null;

            try
            {
                HttpResponseMessage response = await Client.GetAsync(Client.BaseAddress + "/jokes/random");

                if (response.IsSuccessStatusCode)
                {
                    var jsonResponse = await response.Content.ReadAsStringAsync();

                    if (jsonResponse != null)
                    {
                        devJoke = JsonConvert.DeserializeObject <DevJoke>(jsonResponse);
                    }
                }
            }
            catch (Exception)
            {
                // todo
            }
            return(devJoke);
        }