using System;
using System.Collections.Generic;
using System.Dynamic;
namespace LearnAdvancedCSharpWithRealApps
{
class Program
{
static void Main(string[] args)
{
dynamic student = new ExpandoObject();
student.Id = "st0";
student.Name = "Name 1";
student.Age = 20;
student.Score = 5.6;
student.Status = true;
student.Birthday = DateTime.Now;
student.Address = new ExpandoObject();
student.Address.Street = "Street 1";
student.Address.Ward = "Ward 1";
student.Address.District = "District 1";
dynamic course1 = new ExpandoObject();
course1.Id = "c1";
course1.Name = "Course 1";
dynamic course2 = new ExpandoObject();
course2.Id = "c2";
course2.Name = "Course 2";
dynamic course3 = new ExpandoObject();
course3.Id = "c3";
course3.Name = "Course 3";
student.Courses = new List<dynamic> {
course1, course2, course3
};
Console.WriteLine("Student Info");
Console.WriteLine("id: " + student.Id);
Console.WriteLine("name: " + student.Name);
Console.WriteLine("age: " + student.Age);
Console.WriteLine("score: " + student.Score);
Console.WriteLine("status: " + student.Status);
Console.WriteLine("birthday: " + student.Birthday.ToString("dd/MM/yyyy"));
Console.WriteLine("Address: ");
Console.WriteLine("\tstreet: " + student.Address.Street);
Console.WriteLine("\tward: " + student.Address.Ward);
Console.WriteLine("\tdistrict: " + student.Address.District);
Console.WriteLine("Courses: ");
foreach (dynamic course in student.Courses)
{
Console.WriteLine("\tcourse id: " + course.Id);
Console.WriteLine("\tcourse name: " + course.Name);
Console.WriteLine("\t----------------------");
}
Console.ReadLine();
}
}
}
Student Info
id: st0
name: Name 1
age: 20
score: 5.6
status: True
birthday: 11/10/2021
Address:
street: Street 1
ward: Ward 1
district: District 1
Courses:
course id: c1
course name: Course 1
----------------------
course id: c2
course name: Course 2
----------------------
course id: c3
course name: Course 3
----------------------