public virtual void ReadFrom(XElement xE) { ExtensionType = null; ExtensionSetting = null; foreach (var xItem in xE.Elements()) { var localName = xItem.Name.LocalName; if (localName == "extensionType") { ExtensionType = FeedTypeExtensions.Parse(xItem.Value); } else if (localName == "extensionSetting") { ExtensionSetting = new ExtensionSetting(); ExtensionSetting.ReadFrom(xItem); } } }
public virtual void ReadFrom(XElement xE) { FeedId = null; FeedItemId = null; Status = null; FeedType = null; StartTime = null; EndTime = null; DevicePreference = null; Scheduling = null; CampaignTargeting = null; AdGroupTargeting = null; KeywordTargeting = null; GeoTargeting = null; GeoTargetingRestriction = null; PolicyData = null; ExtensionFeedItemType = null; foreach (var xItem in xE.Elements()) { var localName = xItem.Name.LocalName; if (localName == "feedId") { FeedId = long.Parse(xItem.Value); } else if (localName == "feedItemId") { FeedItemId = long.Parse(xItem.Value); } else if (localName == "status") { Status = FeedItemStatusExtensions.Parse(xItem.Value); } else if (localName == "feedType") { FeedType = FeedTypeExtensions.Parse(xItem.Value); } else if (localName == "startTime") { StartTime = xItem.Value; } else if (localName == "endTime") { EndTime = xItem.Value; } else if (localName == "devicePreference") { DevicePreference = new FeedItemDevicePreference(); DevicePreference.ReadFrom(xItem); } else if (localName == "scheduling") { Scheduling = new FeedItemScheduling(); Scheduling.ReadFrom(xItem); } else if (localName == "campaignTargeting") { CampaignTargeting = new FeedItemCampaignTargeting(); CampaignTargeting.ReadFrom(xItem); } else if (localName == "adGroupTargeting") { AdGroupTargeting = new FeedItemAdGroupTargeting(); AdGroupTargeting.ReadFrom(xItem); } else if (localName == "keywordTargeting") { KeywordTargeting = new Keyword(); KeywordTargeting.ReadFrom(xItem); } else if (localName == "geoTargeting") { GeoTargeting = new Location(); GeoTargeting.ReadFrom(xItem); } else if (localName == "geoTargetingRestriction") { GeoTargetingRestriction = new FeedItemGeoRestriction(); GeoTargetingRestriction.ReadFrom(xItem); } else if (localName == "policyData") { if (PolicyData == null) { PolicyData = new List <FeedItemPolicyData>(); } var policyDataItem = new FeedItemPolicyData(); policyDataItem.ReadFrom(xItem); PolicyData.Add(policyDataItem); } else if (localName == "ExtensionFeedItem.Type") { ExtensionFeedItemType = xItem.Value; } } }