Visual Studio Mac Album Vorhören Entity Framework-SQLite-add-migration
Habe ich Visual Studio installiert für Mac (OSX 10.12.1) und heute habe ich Tauchen in ganz ausgiebig.
Wollte ich versuchen Sie zu bekommen, EntityFrameworkCore (1.1.0) laufen mit SQLite.
So, ich habe eine neue Konsole-Anwendung .NET Core und mit einigen Schwierigkeiten in der Lage gewesen, um alle notwendigen nuget-packages. Irgendwie Visual Studio war nicht in der Lage, den download der Abhängigkeiten, so musste ich download alle Abhängigkeiten manuell. (Vielleicht löst dies das problem: .Net Core 1.1.0 NuGet-Pakete können nicht installiert werden, in Visual Studio Mac noch nicht getestet noch nicht.)
Wie bereits in diesem Artikel (https://docs.microsoft.com/en-us/ef/core/get-started/netcore/new-db-sqlite) wollte ich hinzufügen, dass die migration, aber ich konnte nicht finden, dass die erforderlichen Kommandozeilen-tool in die IDE.
Hab ich was verpasst hier?
Dann ging ich auf die zu benutzen .NET-Core-CLI, um es manuell tun über. console. ( https://www.microsoft.com/net/core#macos). Aber wenn ich ausführen dotnet ef migrations add init
bekomme ich die folgende Fehlermeldung.
Keine ausführbare Datei gefunden, die den entsprechenden Befehl "dotnet-ef"
War jemand in der Lage, diese erfolgreich führen?
- Ich hatte ein ähnliches Problem und war in der Lage zu tun, ein Gerüst aus der Paket-manager-Konsole. DB wurde PostgreSQL in meinem Fall.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Visual Studio für Mac 2017 derzeit (April 2017) unterstützt nicht das hinzufügen einer Referenz zu
Microsoft.EntityFrameworkCore.Tools.DotNet
und gibt einen Fehler zurück:Können Sie die Datei manuell Bearbeiten, und fügen Sie die Referenz direkt auf die
csproj
- Datei, wie dokumentiert. Fügen Sie diese zu Ihrem csproj Datei:Führen
dotnet restore
um das Paket zu installieren. Danach, Sie werden in der Lage sein zu verwendendotnet ef migrations add NameOfMigration
unddotnet ef database update
Skripte als pro-Dokumentation.N. B.: Sie müssen in das Projekt-Verzeichnis bei der Ausführung von Befehlen.
Siehe auch Vorschlag feeedback für VS 2017 für Mac:
Mit VS für Mac, das hinzufügen dieser folgende Zeilen in die .csproj macht die migration Arbeit für mich:
Pakete werden automatisch wiederhergestellt speichern .csproj von VS.
Laufen die "dotnet ef" - Befehl durch das terminal, müssen Sie in das Projekt-Verzeichnis, das meine ich nicht aus dem Verzeichnis, wo die .sln-Datei ist, aber von der unteren Ebene.
Hinweis: Gleichen trick mit v1.0.1 des Tools.DotNet hat nicht funktioniert, ich weiß nicht, warum.
Überprüfen Sie, ob dieser Abschnitt in Ihrem Projekt.json-Datei und fügen Sie es hinzu, wenn es fehlt.
Dies ist gültig für die EF 1.1, Vorherige version war mit
Microsoft.EntityFrameworkCore.Tools
Paketproject.json
- Datei.Ohne hinzufügen dieser Artikelgruppe, können Sie nicht fügen Sie die dbcontext-Gerüst Verbindungszeichenfolge verwenden von cmd, so fügen Sie diese in Ihr Projekt Bearbeiten .csproj) erste
Für mich das Problem gelöst, auf macOS, führen Sie diese auf jedem Endgerät:
dotnet tool install --global dotnet-ef