इस प्रकार है:क्या क्लास प्रॉपर्टी/फील्ड अज्ञात प्रकार का हो सकता है सी # 4.0 में?
public class MyClass {
private static var MyProp = new {item1 = "a", item2 = "b"};
}
नोट: उपर्युक्त संकलन नहीं करता है और न ही काम करता है (var का उपयोग नहीं किया जा सकता है), यह केवल मेरा बिंदु दिखाने के लिए है।
अद्यतन: बस प्रश्न को स्पष्ट करने के लिए, मैंने पहले से ही
private static dynamic MyProp = new {item1 = "a", item2 = "b"};
का उपयोग करने का प्रयास किया था और यह काम करता है, लेकिन यह डायनामिक टाइपिंग के कारण इंटेलिजेंस उत्पन्न नहीं करता है। मुझे पता है कि अनाम टाइपिंग सिर्फ एक कंपाइलर चाल है, इसलिए मुझे आशा थी कि मैं पहले से ही एक वर्ग घोषित किए बिना संरचित क्षेत्र घोषित करके इस लाभ का उपयोग अपने लाभ के लिए कर सकता हूं (मुख्य रूप से क्योंकि इस विशेष प्रकार के केवल एक उदाहरण होने जा रहा है खेत)। अब मैं देख सकता हूं कि यह संभव नहीं है, लेकिन मुझे यकीन नहीं है कि ऐसा क्यों है। यदि संकलक किसी अज्ञात ऑब्जेक्ट के लिए केवल एक अंतर्निहित प्रकार उत्पन्न कर रहा है, तो यह कंपाइलर को इस क्षेत्र के लिए इस अंतर्निहित प्रकार को उत्पन्न करने के लिए काफी सरल होना चाहिए।
'MyProp' नहीं एक संपत्ति है, यह है एक क्षेत्र – Greg
@ ग्रेग: वहां, मैंने इसे डिएगो (और आप) के लिए तय किया: पी –
@ एंड्रयू - मुझे बहुत राहत मिली है, धन्यवाद! – Greg