c# - Refactoring two methods with almost the same content -


मेरे पास 2 तरीके हैं जो लगभग समान सामग्री हैं:

  सार्वजनिक स्ट्रिंग Method1 (int SomeInt) {यदि (someBoolean) "परीक्षण" लौटते हैं; अगर (कुछ अन्य बुलियन) {वापसी "dfjakdsad"; } Else {string myStr = getString (someInt)}} सार्वजनिक स्ट्रिंग Method2 (myEnum myenum) {यदि (someBoolean) "परीक्षण" लौटाता है; अगर (कुछ अन्य बुलियन) {वापसी "dfjakdsad"; } और {string myStr = getString (myenum)}}  

अंतर विधि हस्ताक्षर और else में एकल कथन, स्ट्रिंग myStr = GetString

विधि 1 को कई जगहों से कहा जाता है इसलिए उसे किसी तरह से रहना पड़ता है।

मैं एक सामान्य उपयोग की सिफारिश करेगा:

 < कोड> सार्वजनिक स्ट्रिंग विधि & lt; T & gt; (टी एजीआर) {यदि (कुछ बॉनलन) "परीक्षण" लौटाता है; अगर (कुछ अन्य बुलियन) {वापसी "dfjakdsad"; } अन्य {string myStr = getString (arg)}}  

यह मानता है कि getString ही सामान्य है या किसी भी वस्तु का संचालन कर सकता है।

< / div>

Comments