2010-07-03 15 views
10

क्या .NET ढांचे में ToXXXX रूपांतरण विधियों और AsXXXX रूपांतरण विधियों के बीच कोई अर्थपूर्ण अंतर है?`ToXXXX` और` AsXXXX` रूपांतरण विधियों के बीच अंतर क्या हैं?

ऐसी विधियों के उदाहरण Object.ToString और Enumerable.AsEnumerable<T> हैं।

उत्तर

16

यदि विधि एक ही उदाहरण देता है लेकिन किसी अन्य प्रकार पर डाला जाता है, तो AsXXX विधि का उपयोग करें। यदि विधि ऑब्जेक्ट डेटा का उपयोग करके असंबंधित प्रकार के नए उदाहरण को संक्रमित करती है, तो ToXXX विधि का उपयोग करें।

+1

"लिंक इन एक्शन" पुस्तक में एक ही बात का उल्लेख किया गया है। – matrix

+1

'x.AsY() 'और' x.ToY()' के बीच मुझे चुनने में भी क्या मदद करता है, पूर्व में, 'x' में संशोधनों या' x.AsY() 'द्वारा लौटाई गई वस्तु अन्य को प्रभावित कर सकती है , जबकि 'x.ToY()' के साथ, मूल और व्युत्पन्न वस्तु दोनों को एक-दूसरे से स्वतंत्र रूप से संशोधित किया जा सकता है। – stakx

संबंधित मुद्दे