public void Greet(object sender, OfficeEventArgs officeEventArgs) { //Console.WriteLine($"*На работу пришёл {officeEventArgs.Name}*"); /*foreach (Person p in office) * { * came += (sender, time1) => { p.Greeting(this.Name, time); }; * } * came?.Invoke(this, time); * office.Add(this); * came = null; * Console.WriteLine();*/ StringBuilder str = new StringBuilder(""); str.Append(this.name); str.Append(" сказал: "); if (officeEventArgs.Time.Hour < 12) { str.Append("доброе утро, "); } else if (officeEventArgs.Time.Hour > 17) { str.Append("добрый вечер, "); } else { str.Append("добрый день, "); } str.Append(officeEventArgs.Name); Console.WriteLine(str); }
/* * public void Greeting(string name, DateTime dateTime) * { // эти методы должны подписываться на делегат * StringBuilder str = new StringBuilder(""); * str.Append(this.name); * str.Append(" сказал: "); * if (dateTime.Hour < 12) str.Append("доброе утро, "); * else if (dateTime.Hour > 17) str.Append("добрый вечер, "); * else str.Append("добрый день, "); * str.Append(name); * Console.WriteLine(str); * }*/ public void Part(object sender, OfficeEventArgs officeEventArgs) { Random R = new Random(); int r = R.Next(0, 5); switch (r) { default: Console.WriteLine("{0} сказал: до свидания, {1}", this.name, officeEventArgs.Name); break; case 1: Console.WriteLine("{0} сказал: всего доброго, {1}", this.name, officeEventArgs.Name); break; case 2: Console.WriteLine("{0} сказал: счастливо, {1}", this.name, officeEventArgs.Name); break; case 3: Console.WriteLine("{0} сказал: хорошего дня, {1}", this.name, officeEventArgs.Name); break; case 4: Console.WriteLine("{0} сказал: до встречи, {1}", this.name, officeEventArgs.Name); break; } }