मैं अलग-अलग प्रदाताओं को लक्षित करने में सी # एसक्यूएल कथन लिखने का एक तरीका ढूंढ रहा हूं। एसक्यूएल स्टेटमेंट्स का अलग-अलग उदाहरण LIMIT in PostgreSQL बनाम TOP in MSSQL है।जेनेरिक एसक्यूएल बिल्डर .NET
उपरोक्त दोनों की तरह एसक्यूएल-सिंटैक्स को हल करने का एकमात्र तरीका यह है कि उपयोगकर्ता द्वारा कौन सा प्रदाता चुनता है या प्रवाह नियंत्रण के रूप में प्रयास कथन का उपयोग कर रहा है (LIMIT काम नहीं करता है, मैं शीर्ष कोशिश करूंगा इसके बजाय)? मैंने LINQ Take विधि देखी है, लेकिन मुझे आश्चर्य है कि कोई LINQ के बिना ऐसा कर सकता है?
दूसरे शब्दों में, सी # कुछ सामान्य एसक्यूएल प्रदाता वर्ग कि मुझे लगता है कि इस्तेमाल किया जा सकता खोजने में असफल रहा है है?
आप LINQ का उपयोग क्यों नहीं करना चाहते हैं? –
इन मतभेदों को हल करने के कई तरीके हैं, क्या आप निश्चित रूप से एसक्यूएल का उपयोग करने का तरीका हैं, यानी, कुछ सिस्टम ढूंढें जो आपको एक SQL कथन लिखने की अनुमति देता है जो विभिन्न प्रदाताओं में काम करेगा? –
@ मार्क बिअर्स: ठीक है, मैं खुद को अक्सर .NET 2 को लक्षित करता हूं और जहां तक मुझे पता है, LINQ वहां अच्छी तरह से काम नहीं करता है। ऐतिहासिक रूप से ऐसा इसलिए था क्योंकि मैं किसी भी फज़ के बिना मोनो को बंदरगाह करने में सक्षम होना चाहता था, और फिर मुझे बस "अटक गया" मिला। चूंकि मोनो आजकल LINQ के साथ अच्छी तरह से काम करता है, इसलिए मैं वास्तव में कोई अन्य अच्छा जवाब नहीं दे सकता हूं कि मैं अभी भी अतीत में क्यों रह रहा हूं .. – Patrick