मेरे पास कुछ कोड है जो किसी ऑब्जेक्ट से संपत्ति मान खींचने के लिए प्रतिबिंब का उपयोग कर रहा है। कुछ मामलों में गुण, अपवाद फेंक सकता है, क्योंकि वे अशक्त संदर्भ हो आदिलक्ष्यInvocationException आईडीई द्वारा बेकार के रूप में क्यों माना जाता है?
object result;
try
{
result = propertyInfo.GetValue(target, null);
}
catch (TargetInvocationException ex)
{
result = ex.InnerException.Message;
}
catch (Exception ex)
{
result = ex.Message;
}
अंततः कोड ठीक से कार्य है, लेकिन जब मैं डिबगर के तहत चल रहा हूँ:
जब संपत्ति एक अपवाद फेंकता है, आईडीई डीबगर में गिर जाता है जैसे कि अपवाद बेकार था। अगर मैं अभी दौड़ता हूं, तो प्रोग्राम बहता है और अपवाद एक्सेप्शन संपत्ति में वास्तविक अपवाद के साथ लक्ष्यइनवोकेशन अपवाद के रूप में अपवाद आता है।
मैं इसे कैसे होने से रोक सकता हूं?
दरअसल, इससे मदद मिली: मेरे पास कहीं एक स्ट्रिंग स्वरूपण त्रुटि थी (इसके बजाय int प्रारूप में टाइमस्पैन प्रदर्शित करने का प्रयास किया गया था दिनों की संख्या) और यह त्रुटि मिली। आंतरिक अपवाद: गलत प्रारूप स्ट्रिंग। लेकिन यह फ़ॉर्मेटिंग कहां से प्राप्त किया जाए, यह जानने के लिए। जब मैंने "केवल अपना कोड सक्षम करें" चेक किया, तो अनचाहे अपवाद ने तुरंत दिखाया कि यह समस्या थी। –