Ich bin auf der Suche nach einer Möglichkeit, eine SQL-Anweisung in C# zu schreiben, die auf verschiedene Anbieter abzielt. Ein typisches Beispiel für differenzierende SQL-Anweisungen ist die LIMIT in PostgreSQL vs. TOP in MSSQL.Generic SQL Builder .NET
ist die einzige Möglichkeit, SQL-Syntax zu lösen wie die beide oben if-Anweisungen, auf dem Anbieter die wählen Benutzer abhängig zu schreiben oder mit try catch-Anweisungen als Flusskontrolle (LIMIT nicht, funktioniert ich werde versuchen, TOP stattdessen)? Ich habe die LINQ Take Methode gesehen, aber ich frage mich, ob man das ohne LINQ machen kann?
Mit anderen Worten, hat C# einige generische SQL-Provider-Klasse, die ich nicht finden konnte, die verwendet werden können?
Warum möchten Sie nicht LINQ verwenden? –
Es gibt viele Möglichkeiten, diese Unterschiede zu lösen. Sind Sie sicher, dass Sie SQL verwenden, also ein System finden, mit dem Sie eine SQL-Anweisung schreiben können, die über verschiedene Provider hinweg funktioniert? –
@Mark Byers: Nun, ich finde mich oft auf .NET 2 und soweit ich weiß, funktioniert LINQ dort nicht so gut. Historisch gesehen war dies, weil ich in der Lage sein wollte, ohne Fuzz nach Mono zu portieren, und dann bin ich einfach "steckengeblieben". Da Mono heutzutage gut mit LINQ funktioniert, kann ich keine andere gute Antwort geben, warum ich immer noch in der Vergangenheit lebe. – Patrick