Esempio n. 1
0
        static void DynamicData()
        {
            dynamic taxOffice = "taxOffice";

            Console.WriteLine(taxOffice);
            taxOffice = new TaxOffice();
            taxOffice.GetAllTaxPayers();
            dynamic taxPayer = new System.Dynamic.ExpandoObject();

            taxPayer.Id      = Guid.NewGuid();
            taxPayer.Name    = "Tax Payer 1";
            taxPayer.Address = "Address 1";
            taxPayer.Age     = 20;

            taxPayer.IncrementAge = (Action <int>)(x => taxPayer.Age += x);
            taxPayer.IncrementAge(6);
            Console.WriteLine($"{taxPayer.Name} - {taxPayer.Age} - {taxPayer.Address}");

            Console.ReadLine();
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            dynamic viewBag = new System.Dynamic.ExpandoObject();

            viewBag.Name      = "Tom";
            viewBag.Age       = 36;
            viewBag.Languages = new List <string> {
                "English", "German", "French"
            };
            Console.WriteLine($"{viewBag.Name} - {viewBag.Age}");
            foreach (var lang in viewBag.Languages)
            {
                Console.WriteLine(lang);
            }

            viewBag.IncrementAge = (Action <int>)(x => viewBag.Age += x);
            viewBag.IncrementAge(6);
            Console.WriteLine($"{viewBag.Name} - {viewBag.Age}");
            Console.ReadKey();
        }
Esempio n. 3
0
        static void Main(string[] args)
        {
            dynamic viewbag = new System.Dynamic.ExpandoObject();

            viewbag.Name      = "Tom";
            viewbag.Age       = 46;
            viewbag.Languages = new List <string> {
                "english", "german", "french"
            };
            Console.WriteLine($"{viewbag.Name} - {viewbag.Age}");
            foreach (var lang in viewbag.Languages)
            {
                Console.WriteLine(lang);
            }

            // объявляем метод
            viewbag.IncrementAge = (Action <int>)(x => viewbag.Age += x);
            viewbag.IncrementAge(6); // увеличиваем возраст на 6 лет
            Console.WriteLine($"{viewbag.Name} - {viewbag.Age}");

            Console.ReadLine();
        }
Esempio n. 4
0
        static void Main(string[] args)
        {
            dynamic viewbag = new System.Dynamic.ExpandoObject();

            viewbag.Name      = "Tom";
            viewbag.Age       = 46;
            viewbag.Languages = new List <string> {
                "english", "german", "french"
            };

            Console.WriteLine("{0} - {1}", viewbag.Name, viewbag.Age);

            foreach (var lang in viewbag.Languages)
            {
                Console.WriteLine(lang);
            }

            viewbag.IncrementAge = (Action <int>)(x => viewbag.Age += x);
            viewbag.IncrementAge(6);

            Console.WriteLine("{0} - {1}", viewbag.Name, viewbag.Age);
        }
Esempio n. 5
0
        static void Main(string[] args)
        {
            // Dynamic variables
            {
                object x = 3; // тут x - це int
                Console.WriteLine(x);

                x = "Hello World"; // x змінює свій тип на string
                Console.WriteLine(x);

                x = new Person()
                {
                    Name = "Tom", Age = 23
                };                                           // x - об'єкт типу Person
                Console.WriteLine(x);
            }

            {
                object  obj = 24;
                dynamic dyn = 24;
                //obj += 4; // заборонена операція
                dyn += 4; // дозволена
            }

            // Dynamic members
            {
                dynamic person1 = new Worker()
                {
                    Name = "Tom", Age = 27
                };
                Console.WriteLine(person1);

                //person1 = 234;
                Console.WriteLine(person1.getSalary(28.09, "int"));

                dynamic person2 = new Worker()
                {
                    Name = "John", Age = "Twenty six years"
                };
                Console.WriteLine(person2);
                Console.WriteLine(person2.getSalary(30, "string"));
            }

            //ExpandoObject
            {
                dynamic viewbag = new System.Dynamic.ExpandoObject();
                viewbag.Name      = "Tom";
                viewbag.Age       = 46;
                viewbag.Languages = new List <string> {
                    "english", "german", "french"
                };
                Console.WriteLine($"{viewbag.Name} - {viewbag.Age}");
                foreach (var lang in viewbag.Languages)
                {
                    Console.WriteLine(lang);
                }

                // объявляем метод
                viewbag.IncrementAge = (Action <int>)(x => viewbag.Age += x);

                viewbag.IncrementAge(6); // увеличиваем возраст на 6 лет

                Console.WriteLine($"{viewbag.Name} - {viewbag.Age}");
            }
        }