मुझे एंटीटी फ्रेमवर्क के साथ काम करने के कुछ महीने का अनुभव मिला है और ज्यादातर इसके खिलाफ डेटा पुनर्प्राप्ति linq प्रश्नों का एक टन लिख रहा है। मैं एक भारी एसक्यूएल पृष्ठभूमि से आया हूं, और यदि मैं प्रदर्शन समस्याओं को डीबग करने की कोशिश कर रहा हूं तो प्रदर्शन और पठनीयता के लिए कुछ एसक्यूएल अनुकूलित करने की कोशिश कर रहा हूं।इकाई फ्रेमवर्क क्वेरी ऑप्टिमाइज़ेशन
मैं उत्पन्न एसक्यूएल के कुछ देख रहा हूँ मैं इसे कैसे इन बेकार व्युत्पन्न तालिकाओं करने से रोकूँ कॉलम के साथ एक TableA {col1, col2, col3}
select
Extent1.col1
from
(
select col1, col2, col3 from tableA
) AS Extent1
मेरे सवाल है, के लिए इस तरह काम करता है , और इसके बजाय बस
select col1 from tableA
जहां इसकी आवश्यकता है? मुझे यह पता लगाना प्रतीत नहीं होता है कि यह कभी-कभी ऐसा क्यों करता है और अन्य बार यह नहीं करता ...
मुझे अन्य लोगों के विचारों को सुनने में रूचि है; लेकिन मुझे लगता है कि यह ईएफ (साथ ही साथ अन्य ओआरएम?) का उपयोग करने के ड्रॉ बैक में से एक है। उत्पन्न होने वाले वास्तविक एसक्यूएल पर आप बहुत अधिक नियंत्रण खो देते हैं, और जेनरेटेड एसक्यूएल अक्सर बहुत खराब होता है। – CodingGorilla
संभावित ढलान [इकाई ढांचे से उत्पन्न क्वेरी में सुधार] [http://stackoverflow.com/questions/7418675/improve-query-generated-from-entity-framework) –