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();
}
}