public async Task <IActionResult> DeleteSearch(string username) { string accessToken = await HttpContext.GetTokenAsync("access_token"); AspNetUser currentUser = null; HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken); string userString = await client.GetStringAsync(Configuration["URLAPI"] + "api/Account/getUserInfo"); string us = username; currentUser = JsonConvert.DeserializeObject <AspNetUser>(userString); AspNetUser user = _context.AspNetUsers.Where(d => d.UserName == username).Single(); if (user == null) { return(BadRequest()); } else { try { UserLike userLike = _context.UserLikes.Where(d => d.Id == currentUser.Id && d.Id1 == user.Id).Single(); Talk talk = _context.Talks.Where(t => t.Id == currentUser.Id && t.IdUser2Talk == user.Id).SingleOrDefault(); List <Message> messages = null; if (talk == null) { talk = _context.Talks.Where(t => t.Id == user.Id && t.IdUser2Talk == currentUser.Id).SingleOrDefault(); } if (talk != null) { messages = _context.Messages.Where(m => m.TalkId == talk.TalkId).ToList(); } if (messages != null) { foreach (Message message in messages) { _context.Remove(message); } } if (talk != null) { _context.Talks.Remove(talk); } _context.UserLikes.Remove(userLike); _context.SaveChanges(); return(Ok()); } catch (Exception) { return(BadRequest()); } } }