है, क्या यह पता लगाने का एक आसान तरीका है कि क्या अभिव्यक्ति में पैरामीटर एक्स्प्रेशन है जो उदाहरण के लिए एक सदस्य एक्स्प्रेशन नहीं है।यह पता लगाना कि क्या अभिव्यक्ति में "अकेला" पैरामीटर एक्स्प्रेशन
उदाहरण:
x => x.Method() ? x : null
< = 1 किसी भी आगे के मूल्यांकन के बिना एक्स की घटना किसी भी आगे के मूल्यांकन के बिना एक्स के
x => x.Method() ? x.Property : null
< = 0 आवृत्तियां
आप अपने प्रयोग के मामले डाल मुझे पता है कि है विधि (कोई पैराम) और संपत्ति मूल्य और यह पता लगाना चाहते हैं कि यह "ऑब्जेक्ट" स्टोर से बिना किसी अभिव्यक्ति का मूल्यांकन करने के लिए पर्याप्त है या नहीं।
संपादित करें: मेरा उदाहरण शायद सरलीकृत हो सकता है। ऐसे कई अभिव्यक्ति प्रकार हैं जिन्हें संभालने की आवश्यकता है (उदाहरण के लिए UnaryExpression)।
, एक अभिव्यक्ति दी है कि अगर मैं सब विधि वापसी मूल्यों और की संपत्ति मूल्यों पता:
x => ((Cast) x).Property
< = 0 किसी भी आगे के मूल्यांकन के
मैं निम्नलिखित प्रश्न का उत्तर की तलाश में हूँ बिना एक्स के आवृत्तियां इनपुट पैरामीटर लेकिन पैरामीटर मान स्वयं नहीं, क्या मैं अभिव्यक्ति का मूल्यांकन कर सकता हूं?
नेट किस संस्करण का उपयोग कर रहे हैं? –
यह .NET 3.5 है (लेकिन मेरे पास एक .NET 4 संस्करण भी है जहां मैं इसका उपयोग कर सकता हूं) – lindstromhenrik