public async Task <ObjectResult> GetFavorite([FromBody] User item) { DBListofFavs dBUserItemsDBFind = JsonConvert.DeserializeObject <DBListofFavs>(System.IO.File.ReadAllText(path)); bool contains = false; int indx = 0; for (int i = 0; i < dBUserItemsDBFind.dbresults.Count; i++) { if (dBUserItemsDBFind.dbresults[i].id == item.Id) { indx = i; contains = true; break; } } if (contains == false) { return(new ObjectResult("BAD")); } else { return(new ObjectResult(dBUserItemsDBFind.dbresults[indx].jsresults)); } }
public async Task <ObjectResult> AddFavorite([FromBody] User item) { string link = commands.GetTrack(item); string response; using var client = new HttpClient(); response = await client.GetStringAsync(link); User useritem = JsonConvert.DeserializeObject <User>(response); ClassResults searchtrack = JsonConvert.DeserializeObject <ClassResults>(response); if (searchtrack.results.trackmatches.track.Count == 0) { return(new ObjectResult("It's bad")); } for (int i = 0; i < searchtrack.results.trackmatches.track.Count - 1; i++) { //... if (searchtrack.results.trackmatches.track[i].name == item.Name && searchtrack.results.trackmatches.track[i].artist == item.Artist) { SearchTrackMain dbtrack = searchtrack.results.trackmatches.track[i]; searchtrack.results.trackmatches.track.Clear(); searchtrack.results.trackmatches.track.Add(dbtrack); DBFavs dbfavs = new DBFavs(); dbfavs.id = item.Id; dbfavs.jsresults.Add(searchtrack.results.trackmatches.track[i]); DBListofFavs dBUserItemsDB = new DBListofFavs(); dBUserItemsDB.dbresults.Add(dbfavs); DBListofFavs dBUserItemsDBFind = JsonConvert.DeserializeObject <DBListofFavs>(System.IO.File.ReadAllText(path)); bool contains = false; int indx = 0; for (int j = 0; j < dBUserItemsDBFind.dbresults.Count; j++) { if (dBUserItemsDBFind.dbresults[j].id == item.Id) { indx = j; contains = true; break; } } if (contains == false) { dBUserItemsDBFind.dbresults.Add(dbfavs); System.IO.File.WriteAllText(path, JsonConvert.SerializeObject(dBUserItemsDBFind)); } else { bool TrackContains = false; List <SearchTrackMain> userItemadding = dBUserItemsDBFind.dbresults[indx].jsresults; dBUserItemsDBFind.dbresults[indx].jsresults = userItemadding; for (int k = 0; k < dBUserItemsDBFind.dbresults[indx].jsresults.Count; k++) { if (dBUserItemsDBFind.dbresults[indx].jsresults[k].name == dbtrack.name & dBUserItemsDBFind.dbresults[indx].jsresults[k].artist == dbtrack.artist) { TrackContains = true; } } if (TrackContains == false) { dBUserItemsDBFind.dbresults[indx].jsresults.Add(dbtrack); System.IO.File.WriteAllText(path, JsonConvert.SerializeObject(dBUserItemsDBFind)); break; } else { return(new ObjectResult("BAD")); //уже есть в списке } } break; } } return(new ObjectResult("OK")); }