Main() सीएलआर और डब्ल्यूपीएफ द्वारा स्वचालित रूप से प्रदान किया जाता है।
C # संकलक एक कमांड-लाइन स्विच लेता है /mजो उस प्रकार को निर्दिष्ट करता है जिसमें कार्यान्वयन होता है Main()। कन्वेंशन द्वारा, यदि कोई स्टार्टअप ऑब्जेक्ट स्पष्ट रूप से निर्दिष्ट नहीं किया गया है, तो CLR किसी भी वर्ग को देखेगा जिसके पास एक स्टैटिक Main()तरीका है और उसे कॉल करेगा। (जैसा @ मर्क ग्रेवल ने अपनी टिप्पणी में बताया)
WPF के मामले में, निर्मित Main()होने पर स्वचालित रूप से उत्पन्न होता App.xamlहै और / m स्विच को सी # कंपाइलर का उपयोग उस बिंदु पर प्रवेश बिंदु के रूप में करने के लिए निर्दिष्ट किया जाता है। यदि आप परियोजना के गुणों को देखते हैं, तो आप पाएंगे कि स्टार्टअप वस्तु चुनने के लिए आपके लिए एक सेटिंग है। इसलिए यदि आप चाहें, तो आप अपनी खुद की कक्षा प्रदान कर सकते हैं जो लागू करता है Main()।
ध्यान दें कि यह आप पर Applicationउदाहरण बनाने के लिए जिम्मेदारी डाल देगा और Run()यह सुनिश्चित करने के लिए इसकी विधि को कॉल करेगा कि WPF बुनियादी ढांचे को ठीक से शुरू किया गया है।