तत्काल बिना किसी वर्ग प्रकार को सक्रियकर्ता के साथ तुरंत चालू किया जा सकता है, वर्तमान में जब मेरे पास कक्षा का प्रकार होता है और यह जानने की आवश्यकता होती है कि कक्षा बनाई जा सकती है या नहीं। मैं Activator.CreateInstance(type);
पर कॉल करूंगा और परिणाम निकाल दूंगा।परीक्षण करें यदि कक्षा वर्ग को
यह बहुत अक्षम और समस्याग्रस्त प्रतीत होता है।
क्या यह पुष्टि करने का कोई वैकल्पिक तरीका है कि वर्तमान एप्लिकेशन के लिए कक्षा प्रकार को तुरंत चालू किया जा सकता है?
मुझे एप्लिकेशन स्टार्टअप के हिस्से के रूप में यह परीक्षण करने की आवश्यकता है। यह सुनिश्चित करने के लिए कि किसी भी गलत कॉन्फ़िगरेशन को जल्दी पकड़ा जाता है। यदि मैं कक्षा के एक उदाहरण की आवश्यकता होने तक इसे छोड़ देता हूं, तो त्रुटि तब हो सकती है जब कोई इसे ठीक करने के लिए न हो।
यहां मैं अभी क्या कर रहा हूं।
string className = string.Format("Package.{0}.{1}", pArg1, pArg2);
Type classType = Type.GetType(className);
if (classType == null)
{
throw new Exception(string.Format("Class not found: {0}", className));
}
try
{
// test creating an instance of the class.
Activator.CreateInstance(classType);
}
catch (Exception e)
{
logger.error("Could not create {0} class.", classType);
}
यह एक अच्छा तरीका है। धन्यवाद। – cgTag