/// <summary> /// Extract a list of actors when the data has the format: /// <![CDATA[ /// <?xml version="1.0" encoding="UTF-8" ?> /// <Actors> /// <Actor> /// <id>22017</id> /// <Image>actors/22017.jpg</Image> /// <Name>Zachary Levi</Name> /// <Role>Chuck Bartowski</Role> /// <SortOrder>0</SortOrder> /// </Actor> /// </Actors> /// ]]> /// </summary> /// <param name="data">data</param> /// <returns>List of actors</returns> internal List <TvdbActor> ExtractActors(String data) { //Stopwatch watch = new Stopwatch(); //watch.Start(); XDocument xml = XDocument.Parse(data); var allActors = from episode in xml.Descendants("Actor") select new { Id = episode.Element("id").Value, Image = episode.Element("Image").Value, Name = episode.Element("Name").Value, Role = episode.Element("Role").Value, SortOrder = episode.Element("SortOrder").Value }; List <TvdbActor> actorList = new List <TvdbActor>(); foreach (var a in allActors) { int id = Util.Int32Parse(a.Id); if (id == Util.NO_VALUE) { continue; } TvdbActor actor = new TvdbActor { Id = id, Name = a.Name, Role = a.Role, SortOrder = Util.Int32Parse(a.SortOrder) }; TvdbActorBanner banner = new TvdbActorBanner { Id = actor.Id, BannerPath = a.Image }; actor.ActorImage = banner; actorList.Add(actor); } //watch.Stop(); //Log.Debug("Extracted " + actorList.Count + " actors in " + watch.ElapsedMilliseconds + " milliseconds"); return(actorList); }
/// <summary> /// Extract a list of actors when the data has the format: /// <![CDATA[ /// <?xml version="1.0" encoding="UTF-8" ?> /// <Actors> /// <Actor> /// <id>22017</id> /// <Image>actors/22017.jpg</Image> /// <Name>Zachary Levi</Name> /// <Role>Chuck Bartowski</Role> /// <SortOrder>0</SortOrder> /// </Actor> /// </Actors> /// ]]> /// </summary> /// <param name="_data">data</param> /// <returns>List of actors</returns> internal List <TvdbActor> ExtractActors(String _data) { Stopwatch watch = new Stopwatch(); watch.Start(); XDocument xml = XDocument.Parse(_data); List <TvdbBanner> retList = new List <TvdbBanner>(); var allActors = from episode in xml.Descendants("Actor") select new { Id = episode.Element("id").Value, Image = episode.Element("Image").Value, Name = episode.Element("Name").Value, Role = episode.Element("Role").Value, SortOrder = episode.Element("SortOrder").Value }; List <TvdbActor> actorList = new List <TvdbActor>(); foreach (var a in allActors) { TvdbActor actor = new TvdbActor(); actor.Id = Util.Int32Parse(a.Id); actor.Name = a.Name; actor.Role = a.Role; actor.SortOrder = Util.Int32Parse(a.SortOrder); TvdbActorBanner banner = new TvdbActorBanner(); banner.Id = actor.Id; banner.BannerPath = a.Image; actor.ActorImage = banner; if (actor.Id != -99) { actorList.Add(actor); } } watch.Stop(); Log.Debug("Extracted " + actorList.Count + " actors in " + watch.ElapsedMilliseconds + " milliseconds"); return(actorList); }
/// <summary> /// Extract a list of actors when the data has the format: /// <![CDATA[ /// <?xml version="1.0" encoding="UTF-8" ?> /// <Actors> /// <Actor> /// <id>22017</id> /// <Image>actors/22017.jpg</Image> /// <Name>Zachary Levi</Name> /// <Role>Chuck Bartowski</Role> /// <SortOrder>0</SortOrder> /// </Actor> /// </Actors> /// ]]> /// </summary> /// <param name="_data">data</param> /// <returns>List of actors</returns> internal List<TvdbActor> ExtractActors(String _data) { Stopwatch watch = new Stopwatch(); watch.Start(); XDocument xml = XDocument.Parse(_data); List<TvdbBanner> retList = new List<TvdbBanner>(); var allActors = from episode in xml.Descendants("Actor") select new { Id = episode.Element("id").Value, Image = episode.Element("Image").Value, Name = episode.Element("Name").Value, Role = episode.Element("Role").Value, SortOrder = episode.Element("SortOrder").Value }; List<TvdbActor> actorList = new List<TvdbActor>(); foreach (var a in allActors) { TvdbActor actor = new TvdbActor(); actor.Id = Util.Int32Parse(a.Id); actor.Name = a.Name; actor.Role = a.Role; actor.SortOrder = Util.Int32Parse(a.SortOrder); TvdbActorBanner banner = new TvdbActorBanner(); banner.Id = actor.Id; banner.BannerPath = a.Image; actor.ActorImage = banner; if (actor.Id != -99) { actorList.Add(actor); } } watch.Stop(); Log.Debug("Extracted " + actorList.Count + " actors in " + watch.ElapsedMilliseconds + " milliseconds"); return actorList; }
/// <summary> /// Extract a list of actors when the data has the format: /// <![CDATA[ /// <?xml version="1.0" encoding="UTF-8" ?> /// <Actors> /// <Actor> /// <id>22017</id> /// <Image>actors/22017.jpg</Image> /// <Name>Zachary Levi</Name> /// <Role>Chuck Bartowski</Role> /// <SortOrder>0</SortOrder> /// </Actor> /// </Actors> /// ]]> /// </summary> /// <param name="data">data</param> /// <returns>List of actors</returns> internal List<TvdbActor> ExtractActors(String data) { //Stopwatch watch = new Stopwatch(); //watch.Start(); XDocument xml = XDocument.Parse(data); var allActors = from episode in xml.Descendants("Actor") select new { Id = episode.Element("id").Value, Image = episode.Element("Image").Value, Name = episode.Element("Name").Value, Role = episode.Element("Role").Value, SortOrder = episode.Element("SortOrder").Value }; List<TvdbActor> actorList = new List<TvdbActor>(); foreach (var a in allActors) { int id = Util.Int32Parse(a.Id); if (id == Util.NO_VALUE) continue; TvdbActor actor = new TvdbActor { Id = id, Name = a.Name, Role = a.Role, SortOrder = Util.Int32Parse(a.SortOrder) }; TvdbActorBanner banner = new TvdbActorBanner { Id = actor.Id, BannerPath = a.Image }; actor.ActorImage = banner; actorList.Add(actor); } //watch.Stop(); //Log.Debug("Extracted " + actorList.Count + " actors in " + watch.ElapsedMilliseconds + " milliseconds"); return actorList; }
public static void AddImage(int roleId, TvdbActorBanner banner) { var artworkId = ArtworkEntity.AddOrUpdate(ArtworkTypeEnum.Actor, ArtworkSourceEnum.TheTVDBCOM, banner.Id.ToString(CultureInfo.InvariantCulture), null, banner.BannerPath, null, null, null, null, null, null, null, null); ArtworkToRoleEntity.Add(artworkId, roleId); }