यहां जवाब देने के लिए बहुत कुछ नहीं है। यदि आपका ORM उपकरण एक साधारण LINQ क्वेरी से अपेक्षित SQL क्वेरी उत्पन्न नहीं करता है, तो ऐसा कोई तरीका नहीं है जिससे आप क्वेरी को फिर से लिखकर ऐसा करने दे सकते हैं (और आपको इसे पहले स्थान पर नहीं करना चाहिए)।
EF Core में LINQ क्वेरी में मिश्रित क्लाइंट/डेटाबेस मूल्यांकन की अवधारणा है जो उन्हें आपके मामले की तरह अपूर्ण/अत्यंत अक्षम क्वेरी प्रोसेसिंग के साथ EF कोर संस्करण जारी करने की अनुमति देता है।
फीचर्स जो EF Core में नहीं हैं से अंश (शब्द पर ध्यान दें नहीं ) और रोडमैप :
शीघ्र ही, वे क्वेरी प्रोसेसिंग में सुधार करने की योजना बना रहे हैं, लेकिन हम नहीं जानते कि यह कब होगा और किस स्तर की डिग्री (याद रखें कि मिश्रित मोड उन्हें क्वेरी "काम करने" पर विचार करने की अनुमति देता है)।
तो क्या विकल्प हैं?
- सबसे पहले, EF Core से तब तक दूर रहें जब तक यह वास्तव में उपयोगी न हो जाए। EF6 पर वापस जाएं, इसमें ऐसी कोई समस्या नहीं है।
- यदि आप EF6 का उपयोग नहीं कर सकते हैं, तो नवीनतम EF कोर संस्करण से अपडेट रहें।
उदाहरण के लिए, v1.0.1 और v1.1.0 दोनों में आप क्वेरी इच्छित SQL (परीक्षण) उत्पन्न करते हैं, ताकि आप बस अपग्रेड कर सकें और ठोस समस्या दूर हो जाएगी।
लेकिन ध्यान दें कि सुधारों के साथ-साथ नई रिलीज़ में बग/रिग्रेशन भी शामिल हैं (जैसा कि आप यहां देख सकते हैं EFCore एक साधारण LEFT OUTER जॉइन के लिए बहुत सारे कॉलम लौटाता है
उदाहरण के लिए), तो इसे अपने जोखिम पर करें (और पहले विकल्प पर फिर से विचार करें, अर्थात कौन सा आपके लिए सही है
:)पी>