अंदर सी # अभिव्यक्ति का मूल्यांकन मैं एक और एक में एक अभिव्यक्ति का उपयोग करना चाहते:एक और अभिव्यक्ति
Expression<Func<double, double>> f = x => x * x * 27 + blah ... expression with x;
Expression<Func<double, double>> g = y => 3 + 8 * f.Compile()(y) * y * blah... expression with y and f(y);
यह जब LINQ के लिए भेजा SQL क्योंकि f.Compile() एसक्यूएल के लिए अज्ञात है काम नहीं करेगा।
आप f
को y
पर संकलित किए बिना अभिव्यक्ति का मूल्यांकन कैसे करते हैं, लेकिन अभी भी g
को परिभाषित करने के लिए सामान्य वाक्यविन्यास का उपयोग कर रहे हैं?
मैं कुछ अपठनीय Expression.Add
/Expression.Multiply
आदि विवरणों के साथ g
को सभी परिभाषित नहीं करना चाहता हूं।
धन्यवाद।
+1 बहुत ही रोचक लेख। –
बहुत बहुत धन्यवाद, मैंने आपके द्वारा दिए गए लिंक से लिंककिट डाउनलोड किया है और यह 'Invoke' और' AsExpandable' के साथ पूरी तरह से काम करता है। मैं सहमत हूं, बहुत ही रोचक लेख। – SemMike