Beiträge in diesem Abschnitt

Den LocalDatabase-Provider-Modus verwenden

Veröffentlicht:
Aktualisiert:

Wenn Sie MobilityManager lokal über den Aspire AppHost betreiben, steuert die Einstellung LocalDatabase:Provider, wie die Entwicklungsdatenbank bereitgestellt wird. Dies ist von der Laufzeiteinstellung DatabaseProvider getrennt und gilt nur für die AppHost-Orchestrierung, die während der Entwicklung verwendet wird.

Was LocalDatabase:Provider bewirkt

Der AppHost liest LocalDatabase:Provider, um zu entscheiden, ob ein verwalteter Datenbankcontainer für Sie gestartet wird:

  • PostgreSQL (Standard) — der AppHost startet eine PostgreSQL-Ressource und erstellt zwei Datenbanken, die er automatisch mit den Namen SystemConnection und TenantConnection verknüpft.
  • SqlServer — der AppHost stellt keine Datenbank bereit. Die API verwendet weiterhin Ihren eigenen externen oder lokal installierten SQL Server über die von Ihnen bereitgestellten Verbindungszeichenfolgen.

Jeder andere Wert löst einen Fehler Unsupported LocalDatabase:Provider aus, der die unterstützten Werte auflistet.

Hinweis: Der Standardmodus des AppHost ist PostgreSQL, die empfohlene lokale Option auf ARM-basierten Maschinen. Die Einstellung befindet sich in src/CK.MobilityManager.AppHost/appsettings.Development.json.

Betrieb im PostgreSQL-Modus

Im PostgreSQL-Modus stellt der AppHost die Datenbanken mobilitymanager_system und mobilitymanager_tenant bereit, setzt DatabaseProvider=PostgreSQL auf der API und wartet auf die Datenbanken, bevor er startet. Geben Sie ein Kennwort für den PostgreSQL-Parameter an und führen Sie dann den AppHost aus:

$env:Parameters__postgres-password="DevPassword123!"
dotnet run --project src/CK.MobilityManager.AppHost

Start, Onboarding und Mandantenbereitstellung wenden auf PostgreSQL die normalen EF-Core-Migrationen an, genau wie auf SQL Server.

Betrieb im SQL-Server-Modus

Um weiterhin eine lokal verwaltete SQL-Server-Instanz zu verwenden, überschreiben Sie den Anbieter:

$env:LocalDatabase__Provider="SqlServer"
dotnet run --project src/CK.MobilityManager.AppHost

In diesem Modus sind Sie für die SQL-Server-Instanz und für die Bereitstellung der Verbindungszeichenfolgen SystemConnection und TenantConnection verantwortlich, die die API verwendet.

Tipp: Umgebungsvariablen verwenden den doppelten Unterstrich als Trennzeichen, um verschachtelte Schlüssel darzustellen, sodass LocalDatabase__Provider auf den Konfigurationswert LocalDatabase:Provider abgebildet wird.

Wie es sich zur Produktion verhält

Der Schalter LocalDatabase:Provider ist ausschließlich eine Entwicklungserleichterung für den Aspire AppHost. In Docker Compose, Kubernetes oder einer veröffentlichten Bereitstellung gibt es keinen AppHost: Sie setzen den Laufzeitwert DatabaseProvider direkt und richten die Verbindungszeichenfolgen auf Ihre eigenen verwalteten Datenbanken aus. Sowohl der AppHost als auch Docker Compose verwenden SystemConnection und TenantConnection als kanonische Namen der Verbindungszeichenfolgen.

Verwandte Artikel

  • Voraussetzungen für das Bauen und Betreiben der Plattform
  • Zwischen PostgreSQL und SQL Server wählen
  • Die Datenbank-Verbindungszeichenfolgen konfigurieren
  • Die Plattform mit Docker Compose für die Entwicklung betreiben
AH
Geschrieben von Alexander Hagemann
Aktualisiert:
Zugriff abgelehnt
Zugriff abgelehnt