void AddToEventAggregator(RecognizedSportEvent recSportEvent1, RecognizedSportEvent recSportEvent2) { var id = EventNameHelper.GetEventId(recSportEvent1.SportEvent); var aggregator = _EventAggregators.FirstOrDefault(u => u.Id == id); if (aggregator != null) { aggregator.RecognizedSportEvents.RemoveAll( u => u.SportEvent.Bookmaker == recSportEvent1.SportEvent.Bookmaker || u.SportEvent.Bookmaker == recSportEvent2.SportEvent.Bookmaker); aggregator.RecognizedSportEvents.Add(recSportEvent1); aggregator.RecognizedSportEvents.Add(recSportEvent2); return; } var newAggregator = new EventAggregator(id) { Sport = Sport.Soccer, RecognizedSportEvents = new List <RecognizedSportEvent> { recSportEvent1, recSportEvent2 }, Team1 = recSportEvent1.Team1.Title, Team2 = recSportEvent1.Team2.Title, }; _EventAggregators.Add(newAggregator); }
public void Test() { var container = EventAggregatorContainer.Instance; var sportEvent1 = new SportEvent { Bookmaker = Bookmaker.Fonbet, TitleOrigin = "Калуга U17 — Ротор-Волгоград U17", Id = "123123" }; var sportEvent2 = new SportEvent { Bookmaker = Bookmaker.Marathon, TitleOrigin = "Калуга до 17 - Ротор до 17", Id = "444555" }; container.AddEvents(new SportEvent[] { sportEvent1 }); container.AddEvents(new SportEvent[] { sportEvent2 }); var aggregator = container.GetEventAggregator(EventNameHelper.GetEventId(sportEvent1)); Assert.NotNull(aggregator); Assert.Equal("Калуга", aggregator.Team1); Assert.Equal("Ротор-Волгоград", aggregator.Team2); }