コード例 #1
0
ファイル: Program.cs プロジェクト: vatansoni89/VatanTanuja
        static void Main(string[] args)
        {
            Console.WriteLine("Chain of Work!");
            ///1.Promotes decoupling of Request from Handler object
            ///2.When a requet belongs to several different categories,so.
            ///it will either process the request or send to the next handler.

            ///The below example demonstrates validating object in multiple steps
            Person person = new Person()
            {
                Name   = "Tanuja",
                Age    = 30,
                Income = 200
            };

            Request request = new Request()
            {
                Data = person
            };
            NameHandler   nameHandler   = new NameHandler();
            AgeHandler    ageHandler    = new AgeHandler();
            IncomeHandler incomeHandler = new IncomeHandler();

            nameHandler.SetNextHandler(ageHandler);
            ageHandler.SetNextHandler(incomeHandler);

            nameHandler.Process(request);

            foreach (string item in request.ValidationMessages)
            {
                Console.WriteLine(item);
            }

            Console.ReadLine();
        }
コード例 #2
0
        public void Initialize()
        {
            OutcomeHandler outcomeHandler = new OutcomeHandler(outcomeRepository);

            commandHandlers.AddAll(outcomeHandler);

            IncomeHandler incomeHandler = new IncomeHandler(incomeRepository);

            commandHandlers.AddAll(incomeHandler);

            CategoryHandler categoryHandler = new CategoryHandler(categoryRepository);

            commandHandlers.AddAll(categoryHandler);

            CurrencyHandler currencyHandler = new CurrencyHandler(currencyListRepository);

            commandHandlers.AddAll(currencyHandler);
        }