public void AddProgramDescriptionsToList(GnApiProgramsSchema.programsProgramDescriptions programDescriptions, string apiLevel, bool updateTracker = false) { if (programDescriptions.desc != null && programDescriptions.desc.Any()) { if (ProgramDescriptions == null) { ProgramDescriptions = new List <GnApiProgramsSchema.titleDescType>(); } if (!updateTracker) { Log.Debug($"Number of Program Descriptions at {apiLevel} Level: {programDescriptions.desc.Count()}"); } foreach (var description in programDescriptions.desc) { ProgramDescriptions.Add(description); } } else { if (!updateTracker) { Log.Warn($"Program Descriptions are currently null at the current api level: {apiLevel}, " + "will continue and check next api results for Description data"); } } }
public static string CheckAndReturnDescriptionData( GnApiProgramsSchema.programsProgramDescriptions programDescriptions, bool isSeason = false) { if (!programDescriptions.desc.Any()) { return(string.Empty); } if (!isSeason) { foreach (var desc in programDescriptions.desc.OrderByDescending(d => d.size).ThenBy(d => d.type)) { if (desc.type == "plot") { switch (desc.size) { case "250": return(desc.Value); case "100": return(desc.Value); } } if (desc.type == "generic" & desc.size == "100") { return(desc.Value); } } } // season or default fallback if above are not found return(programDescriptions.desc.OrderByDescending(d => d.size) .Where(d => d.size == "250" || d.size == "100") .Select(t => t.Value) .FirstOrDefault() ?.ToString()); }