public override int CreateRankingMonitor(int idProject, string loginName, int[] idKeywordLists, out int keywordsTotal) { var dsKeyword = DSKeyword.Create(_connName); var keywords = dsKeyword.FindUniqueByKeywordLists(idKeywordLists); keywordsTotal = keywords.Count; var keywordAnalysis = new List<KeywordAnalysis>(); foreach (var keyword in keywords) { var keywordAnalysisItem = new KeywordAnalysis { Keyword = keyword, Status = "P" }; var keyword1 = keyword; if (keywordAnalysis.Exists(Item => Item.Keyword == keyword1)) continue; keywordAnalysis.Add(keywordAnalysisItem); } var rankingMonitorRun = new RankingMonitorRun { AnalysisType = "M", ExecutionDate = DateTime.Now, Project = new Project { Id = idProject }, Status = new Status { Name = "P" }, User = loginName }; using (var tran = new TransactionScope(_connName)) { var dsRankingMonitorRun = DSRankingMonitorRun.Create(_connName); var dsKeywordAnalysis = DSKeywordAnalysis.Create(_connName); dsRankingMonitorRun.Insert(rankingMonitorRun); keywordAnalysis.ForEach(KeywordAnalysis => { KeywordAnalysis.RankingMonitorRun = rankingMonitorRun; dsKeywordAnalysis.Insert(KeywordAnalysis); }); tran.Commit(); } return rankingMonitorRun.Id; }
public abstract void UpdateRankingMonitor(RankingMonitorRun rankingMonitorRun);
public override void UpdateRankingMonitor(RankingMonitorRun rankingMonitorRun) { using (var tran = new TransactionScope(_connName)) { DSRankingMonitorRun.Create(_connName).Update(rankingMonitorRun); tran.Commit(); } }
public static void UpdateRankingMonitor(RankingMonitorRun rankingMonitorRun) { Provider.UpdateRankingMonitor(rankingMonitorRun); }