2010-03-03 23 views

उत्तर

10

मूल रूप से जब आप प्रकारों के बीच रूपांतरण प्रदान करना चाहते हैं। LINQ एक्सएमएल के लिए अच्छा उदाहरण प्रदान करता है ... वहाँ एक निहित XName को स्ट्रिंग से रूपांतरण है, तो आप लिख सकते हैं:

XName name = "element"; 

लेकिन वहाँ एक स्पष्टint (और कई अन्य प्रकार के) के लिए XAttribute से रूपांतरण है, इसलिए आप अपने कोड में एक डाली शामिल करने के लिए है:

int value = (int) element.Attribute("age"); 

अंतर्निहित रूपांतरण प्रदान करने से पहले बहुत सावधानी से विचार करें - वे शायद ही कभी एक अच्छा विचार कर रहे हैं; LINQ से XML उन्हें बहुत प्रभाव के लिए उपयोग करता है, लेकिन वे भ्रमित हो सकते हैं। यहां तक ​​कि स्पष्ट उपयोगकर्ता परिभाषित रूपांतरण भी अवांछित पाठक को आश्चर्यचकित कर सकते हैं।

+0

लगभग अधिकांश बार मैं उन्हें पुस्तकालय डिजाइनर के रूप में उपयोग करने से बचता हूं (जब तक मुझे यकीन नहीं है कि उनका दुरुपयोग नहीं किया जाएगा और शिकायत नहीं की जाएगी)। –