asp.net mvc 3 - Why do we declare a private parameterless constructor every time -


मैंने इसे मेरे प्रोजेक्ट्स में देखा है

  class उत्पाद {सार्वजनिक स्ट्रिंग नाम {get; निजी सेट; } सार्वजनिक दशमलव मूल्य {प्राप्त; निजी सेट; } सार्वजनिक उत्पाद (स्ट्रिंग का नाम, दशमलव मूल्य) {नाम = नाम; मूल्य = मूल्य; } उत्पाद () {} सार्वजनिक स्थिर सूची & gt; उत्पाद & gt; GetSampleProducts () {नई सूची वापस & lt; उत्पाद & gt; नया उत्पाद {नाम = "वेस्ट साइड स्टोरी", मूल्य = 9.9 9 मीटर}, नया उत्पाद {नाम = "हत्यारों", मूल्य = 14.9 9 मीटर}, नया उत्पाद {नाम = "मेंढक", मूल्य = 13.99 मीटर}, नया उत्पाद {नाम = "स्वीनी टोड", मूल्य = 10.9 9 मीटर}}; } सार्वजनिक ओवरराइड स्ट्रिंग टूस्ट्रिंग () {वापसी स्ट्रिंग। फ़ॉर्मेट ("{0}: {1}", नाम, मूल्य); }}    

एक बार जब आप पैरामीटर के साथ एक कन्स्ट्रक्टर बनाते हैं, तो आपका डिफ़ॉल्ट पैरामीटर कम कन्स्ट्रक्टर चला जाता है । अब यदि आप चाहते हैं कि ऑब्जेक्ट को किसी भी मान दिए बिना प्रारंभ किया जाए, तो आपको स्पष्ट रूप से पैरामीटर कम कन्स्ट्रक्टर घोषित करना होगा। यह इस पर निर्भर करता है कि आप इसका उपयोग कैसे करना चाहते हैं, यदि आप चाहते हैं कि ऑब्जेक्ट केवल उन मानों के साथ आरंभ किया जाए और उनके बिना आपकी ऑब्जेक्ट मान्य नहीं है, तो पैरामीटर कम कंस्ट्रक्टर नहीं जोड़ें। लेकिन अगर पैरामीटर के साथ आपका कन्स्ट्रक्टर ऑब्जेक्ट को कुछ वैल्यूज़ के साथ आरंभ करने का एक तरीका है, तो आप सी # 3.0 ऑब्जेक्ट इनाइलाइज़र का उपयोग करके हमेशा नीचे अपना ऑब्जेक्ट इनिशियलाइज़ कर सकते हैं

  var product = new product {name = "कुछ नाम", मूल्य = 10.0};    

Comments