Blog.Web.Api.Controllers.SearchController.Post C# (CSharp) Method

Post() private method

private Post ( [ search ) : Task
search [
return Task
        public async Task<IHttpActionResult> Post([FromBody]SearchViewModel search)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return BadRequest(ModelState);
                }

                var results = new SearchResultsViewModel();

                if (search.IncludePosts)
                {
                    results.Posts = await GetPosts(search.Query, search.Threshold, search.Skip);
                }

                if (search.IncludeComments)
                {
                    results.Comments = await GetComments(search.Query, search.Threshold, search.Skip);
                }

                if (search.IncludeUsers)
                {
                    results.Users = await GetUsers(search.Query, search.Threshold, search.Skip);
                }

                return Ok(results);
            }
            catch (Exception ex)
            {
                _errorSignaler.SignalFromCurrentContext(ex);
                return BadRequest();
            }
        }