ระบบ เนมสเปซการสะท้อนมีคลาสที่ให้คุณรับข้อมูลเกี่ยวกับแอปพลิเคชันและเพิ่มประเภท ค่า และอ็อบเจ็กต์ในแอปพลิเคชันแบบไดนามิก
ออบเจ็กต์การสะท้อนใช้สำหรับรับข้อมูลประเภทที่รันไทม์ คลาสที่ให้การเข้าถึงข้อมูลเมตาของโปรแกรมที่กำลังทำงานอยู่ในระบบ เนมสเปซสะท้อนแสง
การสะท้อนช่วยให้ดูข้อมูลแอตทริบิวต์ที่รันไทม์ได้
การสะท้อนช่วยให้ตรวจสอบประเภทต่างๆ ในชุดประกอบและยกตัวอย่างประเภทเหล่านี้ได้
การสะท้อนช่วยให้มีผลผูกพันกับวิธีการและคุณสมบัติล่าช้า
การสะท้อนช่วยให้สร้างประเภทใหม่ในขณะใช้งานจริง แล้วทำงานบางอย่างโดยใช้ประเภทเหล่านั้นได้
ตัวอย่าง
GetProperty(สตริง)
ค้นหาทรัพย์สินสาธารณะด้วยชื่อที่ระบุ
GetType(สตริง บูลีน)
รับอ็อบเจ็กต์ Type ที่มีชื่อที่ระบุในอินสแตนซ์แอสเซมบลี และอาจมีข้อยกเว้นหากไม่พบประเภทดังกล่าว
SetValue(Object, Object)
ตั้งค่าคุณสมบัติของวัตถุที่ระบุ
class Program{ static void Main(string[] args){ User user = new User(); Type type = user.GetType(); PropertyInfo prop = type.GetProperty("Name"); prop.SetValue(user, "Bangalore", null); System.Console.WriteLine(user.Name); Console.ReadLine(); } } class User{ public int Id { get; set; } public string Name { get; set; } }
ผลลัพธ์
Bangalore