private void RefreshKeywords(SmartWordSetupModel model, Promotion promo)
        {
            IEnumerable<PromotionKeywordAssociation> qry =
                _dbcontext.PromotionKeywordAssociations.Where(key => key.PromotionFK == promo.PromotionPK).ToList();
            var kpos = new List<KeywordProbabilityObject>();
            KeywordProbabilityObject kpo;

            foreach (PromotionKeywordAssociation pka in qry)
            {
                kpo = new KeywordProbabilityObject
                          {
                              keyword = pka.Keyword.Keyword1,
                              semplestProbability =
                                  pka.SemplestProbability == null ? 0 : pka.SemplestProbability.Value,
                              isTargetMSN = pka.IsTargetMSN,
                              isTargetGoogle = pka.IsTargetGoogle,
                              isDeleted = pka.IsDeleted,
                              id = pka.KeywordFK
                          };
                kpos.Add(kpo);
            }
            SaveKeywords(promo.PromotionPK, kpos, model.NegativeKeywords,
                         model.ProductGroup.ProductGroupName, model.ProductGroup.ProductPromotionName);
        }
 public void SaveNegativeKeywords(Promotion promo, CampaignSetupModel model, SemplestModel.Semplest dbcontext)
 {
     IEnumerable<PromotionKeywordAssociation> qry = dbcontext.PromotionKeywordAssociations.Where(key => key.PromotionFK == promo.PromotionPK).ToList();
     var kpos = new List<KeywordProbabilityObject>();
     KeywordProbabilityObject kpo;
     foreach (PromotionKeywordAssociation pka in qry)
     {
         kpo = new KeywordProbabilityObject
         {
             keyword = pka.Keyword.Keyword1,
             semplestProbability = pka.SemplestProbability == null ? 0 : pka.SemplestProbability.Value,
             isTargetMSN = pka.IsTargetMSN,
             isTargetGoogle = pka.IsTargetGoogle
         };
         kpos.Add(kpo);
     }
     if (model.AdModelProp.NegativeKeywords != null)
         foreach (string negativeKeyword in model.AdModelProp.NegativeKeywords)
         {
             if (!qry.Any(key => key.Keyword.Keyword1 == negativeKeyword))
             {
                 kpo = new KeywordProbabilityObject { keyword = negativeKeyword };
                 kpos.Add(kpo);
             }
         }
     SaveKeywords(promo.PromotionPK, kpos, model.AdModelProp.NegativeKeywords, model.ProductGroup.ProductGroupName, model.ProductGroup.ProductPromotionName);
 }