I have the following code that works:
private string GetMovieCert(int ID)
{
try
{
var client = new RestClient("https://api.themoviedb.org/3/movie/" + ID.ToString() + "/release_dates?api_key=###");
var request = new RestRequest(Method.GET);
request.AddParameter("undefined", "{}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
List<char> items = response.Content.ToList<char>();
// Char version
int hit = 0;
string allres = "";
foreach (var item in items)
{
string f = item.ToString();
allres = allres + item.ToString();
if (f == "}")
{
if (allres.Contains("iso_3166_1\":\"US")) hit |= 3;
// if (allres.Contains("iso_3166_1")) hit |= 1;
// if (allres.Contains("US")) hit |= 2;
if (allres.Contains("\"certification\":\"\"")) hit |= 4;
if (hit == 3) break;
allres = "";
hit &= 3;
}
if (f == "]") hit = 0;
}
int pFrom = allres.IndexOf("certification") + "certification".Length;
int pTo = allres.LastIndexOf("iso_639_1");
String result = allres.Substring(pFrom, pTo - pFrom);
return result.Split(':')[1].Replace(",", "").Replace("\"", "");
}
catch { return ""; }
}
Is there a cleaner, more direct way to accomplish this? Using Linq or a JSON parser?
Thanks!
.לא מצאת סרט או סדרה? היכנס כדי ליצור אותם
?רוצה לדרג או להוסיף פריט אל רשימה
?לא חבר אתר
תגובה מאת RichGodlewski
ב-ינואר 2, 2017 ב-12:08אחרי חצות יום
Ok, I figured out a way to retrieve a movie's certification using a JSON query. I'm posting the code so that it may help someone.
תגובה מאת Travis Bell
ב-ינואר 2, 2017 ב-1:34אחרי חצות יום
Hi @RichGodlewski Cool, thanks for the update. You'll find it always easier to use a real JSON parser as it will handle all of the proper serialization for you. Being able to work with native objects is always nicer 😃