Kann Visual Studio Lightswitch eine Verbindung zu einer Oracle-Datenbank?
-
26-09-2019 - |
Frage
Alle Demos von Visual Studio Lightswitch Verwendung SQL-Server, ist es möglich, den Zugriff auf Daten von Oracle mit Visual Studio Lightswitch?
Lösung
Visual Studio Lightswitch kann über das Entity Framework zu einer Oracle-Datenbank beibehalten werden.
-
Oracle Data Provider (ODP.Net)
Oracle ODAC-Tools enthalten den Oracle Data Provider (ODP.Net) für die Verwendung mit Visual Studio-Anwendungen. Oracle neueste Treiber mit Unterstützung für Entity Framework 4.1 und „Model First“ Ansatz.
EDIT: Ich bin nicht sicher, ob es "Code-First" oder EF 4.2 so Check-Dokumentation unterstützt. Wie gesagt, es ist kostenlos und von Oracle unterstützt, damit ich stark hier vorschlagen würde beginnen, bevor Sie Ihre eigenen Rollen oder mit Open-Source-Anbieter / drivers .
herunterladen ODP.Net 11.2.0.3
. Hinweise: "11.2.0.2 Release 4" wird es geschnitten, aber "11.2.0.3 ist" out und stabile
-
Drittanbieter-Treiber sind für den Kauf zur Verfügung:
-
Open Source Provider
Darüber hinaus gibt es einige Open-Source-Optionen zur Verfügung - ein I auf Github gefunden:
Tutorial auf MSDN: Wie Connect Lichtschalter zu EF 4.1
Andere Tipps
Ja, wenn Sie einen Dritt Teil Anbieter für die Entity Framework erhalten können. Ich fragte tatsächlich diese Frage auf VSLive in dieser Woche.
Ich habe die neuesten ODAC 11.2 Release 4 (11.2.0.3.0), dass Stützen Entity Framework, und es funktioniert gut verwendet.
Wenn Sie diese Fehlermeldung erhalten, „Innere Ausnahmemeldung: Die Verbindung ist bereits Teil einer lokalen oder eine verteilten Transaktion“
können Sie das Problem lösen, indem sie die zweite Stelle gefolgt von BScholz, https: / /forums.oracle.com/forums/thread.jspa?threadID=2263095
Grundsätzlich müssen Sie SaveChanges_Excuting und SaveChanges_Excuted für die Oracle-Datenquelle implementieren.
- Umschalten auf "File View" (Light wird "Logical View" standardmäßig angezeigt werden).
- Fügen Sie einen Verweis auf "System.Transactions" im Server-Projekt.
- Wechseln Sie wieder zu "Logical View"
- Rechte der Data Source Name klicken und klicken Sie auf "Code anzeigen" zu bearbeiten Teilklasse.
-
Kopieren und fügen Sie den Code unten:
private TransactionScope _tscope; partial void SaveChanges_Executing() { _tscope = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted }); } partial void SaveChanges_Executed() { _tscope.Complete(); _tscope.Dispose(); }
Das Light Training Kit hat alternative Datenquellen über WCF RIA Services eine Übung gewidmet werden.
Sie können diese nützlich finden.