using System.Threading.Tasks;
using System.Collections.Generic;
using Microsoft.Extensions.DependencyInjection;
namespace IAsyncEnumerableSerialize;
public delegate void PrintDelegate(string message);
public static void Main(string[] args)
PrintDelegate del = PrintMessage;
public static void PrintMessage(string msg){
public static void ToUpperCase(string msg){
Console.WriteLine(msg.ToUpper());
static async IAsyncEnumerable<int> PrintNumbers(int n)
for (int i = 0; i < n; i++)
class Human : Animal , Mammal
void Animal.Eat(){ Console.WriteLine("Eating.....");
Console.WriteLine("Walking......");
interface IMessageService {
void SendMessage(string message);
class EmailService : IMessageService {
public void SendMessage(string message) {
Console.WriteLine("Email Sent: " + message);
private readonly IMessageService _messageService;
public Notification(IMessageService messageService) {
_messageService = messageService;
public void Notify(string msg) {
_messageService.SendMessage(msg);