C#-এ System.Reflection namespace-এ System.Reflection namespace-এ এমন ধরনের রয়েছে যা মেটাডেটা পরীক্ষা করে কোডে এসেম্বলি, মডিউল, সদস্য, প্যারামিটার এবং অন্যান্য আইটেম সম্পর্কে তথ্য প্রদান করে। এই নেমস্পেসে এসেম্বলি ক্লাস একটি অ্যাসেম্বলি প্রতিনিধিত্ব করে। সাধারণত, আপনি টাইপের অ্যাসেম্বলি প্রপার্টি ব্যবহার করে এটি অ্যাক্সেস করতে পারেন।
একটি সমাবেশের পরিচয় চারটি আইটেম নিয়ে গঠিত -
- সরল নাম
- 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-এর কোনো নির্ভরতা সমাধানের প্রয়োজন হয় অথবা আপনি, একজন প্রোগ্রামার হিসেবে, অ্যাসেম্বলি. লোড(অ্যাসেম্বলিনাম) পদ্ধতি ব্যবহার করে গতিশীলভাবে একটি সমাবেশ লোড করতে চান।