示例#1
0
 public void AddCampaignId(string campaignId)
 {
     if (!CampaignIds.Contains(campaignId))
     {
         CampaignIds.Add(campaignId);
     }
 }
 public virtual void ReadFrom(XElement xE)
 {
     DateTimeRange = null;
     CampaignIds   = null;
     FeedIds       = null;
     foreach (var xItem in xE.Elements())
     {
         var localName = xItem.Name.LocalName;
         if (localName == "dateTimeRange")
         {
             DateTimeRange = new DateTimeRange();
             DateTimeRange.ReadFrom(xItem);
         }
         else if (localName == "campaignIds")
         {
             if (CampaignIds == null)
             {
                 CampaignIds = new List <long>();
             }
             CampaignIds.Add(long.Parse(xItem.Value));
         }
         else if (localName == "feedIds")
         {
             if (FeedIds == null)
             {
                 FeedIds = new List <long>();
             }
             FeedIds.Add(long.Parse(xItem.Value));
         }
     }
 }
        public Expression <Func <Vacancy, bool> > GetFilteringPredicate()
        {
            Expression <Func <Vacancy, bool> > filteringExpression = null;

            if (!string.IsNullOrEmpty(Title))
            {
                TryAddPredicate(ref filteringExpression, vacancy => vacancy.Title.Contains(Title));
            }

            if (!string.IsNullOrEmpty(EmployerCompany))
            {
                TryAddPredicate(ref filteringExpression, vacancy => vacancy.Employer.CompanyName.Contains(EmployerCompany));
            }

            if (CampaignIds.Any())
            {
                TryAddPredicate(ref filteringExpression, vacancy => CampaignIds.Any(x => vacancy.CampaignId == x));
            }

            return(filteringExpression);
        }