मेरे पास एक कंसोल एप्लिकेशन है जो शुरू होता है, सेवाओं का एक समूह (लंबे समय से चलने वाला स्टार्टअप) होस्ट करता है, और उसके बाद ग्राहकों को इसमें कॉल करने की प्रतीक्षा करता है। मेरे पास एकीकरण परीक्षण है जो इस कंसोल एप्लिकेशन को शुरू करता है और "क्लाइंट" कॉल करता है। क्लाइंट कॉल करने से पहले मैं कंसोल एप्लिकेशन को स्टार्टअप को पूरा करने के लिए कैसे प्रतीक्षा करूं?कंसोल एप्लिकेशन निष्क्रिय होने तक मैं कैसे प्रतीक्षा करूं?
मैं Thread.Sleep(int)
करने से बचना चाहता हूं क्योंकि यह स्टार्टअप समय (जो बदल सकता है) पर निर्भर है और स्टार्टअप तेज पर समय बर्बाद कर रहा है।
Process.WaitForInputIdle
केवल यूआई के साथ अनुप्रयोगों पर काम करता है (और मैंने पुष्टि की है कि यह इस मामले में अपवाद फेंकता है)।
मैं जैसे अजीब समाधानों के लिए खुला हूं, कंसोल एप्लिकेशन तैयार होने पर एक temp फ़ाइल लिखता है।
कंसोल एप्लिकेशन डब्ल्यूसीएफ सेवाओं को होस्ट करता है। "क्लाइंट" डब्ल्यूसीएफ कॉल करता है। यदि कंसोल एप्लिकेशन ने स्टार्टअप पूरा नहीं किया है, तो क्लाइंट एंडपॉइंट नहीं मिला अपवाद प्राप्त करता है। –