public static void Main_Observer_V30(string[] args) { // create objects for testing AverageScoreDisplay averageScoreDisplay = new AverageScoreDisplay(); CurrentScoreDisplay currentScoreDisplay = new CurrentScoreDisplay(); CricketData cricketData = new CricketData() { Runs = 100, Wickets = 3, Overs = 22.3f }; // pass the displays to Cricket data CricketSubject cricketSubject = new CricketSubject() { CricketData = cricketData }; // register display elements cricketSubject.Register(averageScoreDisplay); cricketSubject.Register(currentScoreDisplay); // in real app you would have some logic to // call this function when data changes cricketSubject.ChangeData(); //remove an observer cricketSubject.UnRegister(averageScoreDisplay); // now only currentScoreDisplay gets the // notification cricketSubject.ChangeData(); Console.ReadKey(); }
public void Update(CricketData cricketData) { CricketData = cricketData; Display(); }
public void Update(CricketData cricketData) { this.RunRate = (float)cricketData.Runs / cricketData.Overs; this.PridictedScore = (int)this.RunRate * cricketData.TotalOvers; Display(); }