यह एक ऐसा सम्मेलन है जिसे साइटकोर.dll में उपयोग किया जाने वाला हेविलिय देखा जा सकता है। अगर यह स्थिति पूरी नहीं होती है तो इसका अपवाद फेंकने के लिए प्रयोग किया जाता है।
उदाहरण के लिए यदि आप Assert.IsTrue को देखो, अगर शर्त पूरी नहीं कर रहा है प्रणाली खोज API मैं इस पाया से एक विधि डी-संकलन एक "InvalidOperationException"
फेंक देते हैं।
Assert.IsTrue(local_0 != null, "SearchConfiguration is missing");
तो अगर हम डी-संकलन IsTrue, यह हमें देता है
[AssertionMethod]
public static void IsTrue([AssertionCondition(AssertionConditionType.IS_TRUE)] bool condition, string message)
{
if (!condition)
throw new InvalidOperationException(message);
}
अपने अन्य सवाल आप अपने आवेदन कोड में इसके उपयोग कर सकते हैं, जैसा कि आप अपने बस एक फेंकने का एक और तरीका देख सकते हैं उत्तर करने के लिए अपवाद अगर कोई शर्त पूरी नहीं हुई है।
भ्रम शब्द शब्द के उपयोग के साथ आता है, जैसा कि आपने कहा है कि पारंपरिक सी # .NET समाधान में यूनिट परीक्षणों के संदर्भ में आमतौर पर देखा जाता है। जब तक आप जानते हैं कि दृश्यों के पीछे साइटकोर जोर क्या कर रहा है, तो आप इसका उपयोग करना चाहते हैं या नहीं।
स्रोत
2015-05-19 00:36:33
'System.Diagnostics.Debug.Assert' को इंगित करने के लायक है यह सशर्त है और केवल डेब्यूग में एक आवेदन के निर्माण में आग लग जाएगी। Sitecore.Assert में ऐसा कोई प्रतिबंध नहीं है, इसलिए जब भी DEBUG और रिलीज़ बिल्ड दोनों में परीक्षण स्थिति विफल हो जाती है तो एक अवैधऑपरेशन अपवाद उठाएगा। –
क्या आप स्पष्ट कर सकते हैं "आर्टर्ट चीजों को थोड़ा सा साफ करता है"। इसका मतलब है अपवाद सूजन है। अभी भी कारण नहीं दिख रहा है कि हमें इसकी आवश्यकता क्यों है। –
केविन कहते हैं, आप केवल आवेषण पर भरोसा नहीं करना चाहते हैं। आवेषण उन मामलों को कवर करने के लिए है जो परीक्षण के दौरान मदद करने की संभावना है, जैसे संसाधन मौजूद नहीं है या एक मूल्य शून्य नहीं है जो नहीं होना चाहिए। आपको अभी भी उत्पादन कोड के लिए सत्यापन और अपवाद और अपवाद हैंडलिंग का उपयोग करना चाहिए क्योंकि आवेषण रिलीज निर्माण में कार्य नहीं करता है। वे परीक्षण करते समय सहायक होते हैं क्योंकि वे त्वरित रूप से जोड़ते हैं और कम प्रयास के साथ अधिक प्रतिक्रिया प्रदान कर सकते हैं। –