Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

เนมสเปซ System.Reflection ใน C #


เนมสเปซ System.Reflection ใน C# เนมสเปซ System.Reflection ใน C# มีประเภทที่ให้ข้อมูลเกี่ยวกับแอสเซมบลี โมดูล สมาชิก พารามิเตอร์ และรายการอื่นๆ ในโค้ดโดยการตรวจสอบข้อมูลเมตา คลาส Assembly ในเนมสเปซนี้แสดงถึงแอสเซมบลี โดยทั่วไปคุณสามารถเข้าถึงได้โดยใช้คุณสมบัติ Assembly ใน Type

เอกลักษณ์ของแอสเซมบลีประกอบด้วยสี่รายการ -

  • ชื่อง่ายๆ
  • เวอร์ชันจากแอตทริบิวต์ AssemblyVersion ในรูปแบบ major.minor.build.revision (0.0.0.0 หากไม่มี)
  • วัฒนธรรม (เป็นกลางหากไม่ใช่ดาวเทียม)
  • โทเค็นคีย์สาธารณะ (เป็นโมฆะหากไม่ได้ระบุชื่ออย่างแน่นหนา)

ชื่อแอสเซมบลีที่มีคุณสมบัติครบถ้วนคือสตริง และรวมรายการที่ระบุเหล่านี้ในรูปแบบ -

simple-name, Version=version, Culture=culture, PublicKeyToken=public-key

ตัวอย่างเช่น

Assembly assembly = typeof (Person).Assembly; // Person is a class name
// Prints: c-sharp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Console.WriteLine(assembly.FullName);

การโหลดแอสเซมบลีเป็นกระบวนการโหลดแอสเซมบลีจากตำแหน่งที่รู้จัก โดยทั่วไป CLR สามารถโหลดแอสเซมบลีโดยใช้ชื่อเต็ม กระบวนการนี้เรียกว่าความละเอียดในการประกอบ ความละเอียดของแอสเซมบลีจะดำเนินการเมื่อ CLR จำเป็นต้องแก้ไขการขึ้นต่อกัน หรือคุณในฐานะโปรแกรมเมอร์ต้องการโหลดแอสเซมบลีแบบไดนามิก โดยใช้เมธอด Assembly.Load(assemblyName)