منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : لعمل نسخة من Class دون استعمال الكلمة new
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
كاتب الموضوع : Boutemine Oualid

السلام عليكم و رحمة الله و بركاته
الشفرة تستعمل الفئة Activator لبناء كائنات من فئات مجهولة (معرفة الا باسمها)
قد يتسائل البعض، ما الفائدة

أقول أن الفائدة الكبرى تكمن في استعمالها من ال Generics حيث يمكننا وضع شروط على الGeneric Type و لاكننا لا نعرف النوع الحقيقي للGeneric و قد نحتاج إلى بناء نستخة كائن من الفئة التي تمثل ال Generic و لاكننا لا نعرفها، لذلك نستعمل الفئة Activator

كود :
public static object GetInstance(Assembly a, string className)
{
try
{
Type t = a.GetType(className);
return Activator.CreateInstance(t);
}
catch (ArgumentNullException) { return null; } // unknown type
}
//Example
object o = GetInstance(Assembly.GetExecutingAssembly(), "Namespace.MyClasse");