Es ist üblich, eine große Lösung ist mehrere Projekte für eine Frage der Organisation der Codebasis zu brechen, und dies war einfach in den früheren Versionen von .NET Framework von innerhalb von Visual Studio.Wie spezifiziert man Abhängigkeiten von anderen Projekten mit .NET CLI?
Wie das gleiche mit .NET CLI getan werden kann? Angenommen, wir das folgende vereinfachte Szenario zum Beispiel haben:
- Solution Folder
- global.json
- src
- LibProject
- ConsoleProject
Nehmen wir nun an, dass die ConsoleProject
auf dem LibProject
abhängt. Intuitiv glaube ich, dass dies bedeutet, dass in der ConsoleProject
die project.json
einen dependencies
Abschnitt wie diese enthalten müssen:
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.0-*"
},
"LibProject": "1.0.0-*"
}
Aber wenn wir das tun, wenn wir versuchen, die Abhängigkeiten wiederherzustellen für die ConsoleProject
oder wenn wir versuchen, bau es, wir können es nicht tun. Wenn wir versuchen, wiederherzustellen, erhalten wir die Nachricht
Konnte 'LibProject (> = 1.0.0)' für '.NETCoreApp, Version = v1.0' nicht auflösen.
Ich verstehe den Grund. Beim Wiederherstellen versucht NuGet, dies als Paket für die angegebenen Feeds unter NuGet.config
zu finden. Aber es sollte nicht so sein, es sollte das auf dem Geschwister-Ordner verwenden.
In den vorherigen Versionen von .NET Core, würden wir die Referenz über VS hinzufügen und dann, wenn wir versuchen würden, die ConsoleProject
zu bauen, würde VS zunächst LibProject
erstellen und die entsprechende DLL verwenden.
Wie die gleiche Sache hier gemacht wird? Wie können wir ein anderes Projekt in derselben Lösung referenzieren und wie können wir die .NET CLI unter Berücksichtigung dieser Art von Abhängigkeit wiederherstellen/erstellen/ausführen?
Glück gehabt, wenn Sie tun ' "libproject": { "Ziel": "Projekt"} '? – khellang
In neueren Versionen des Dotnet-Clients, die das 'csproj'-Format verwenden, können Sie' dotnet add reference ../ MyProject/MyProject.csproj' https://docs.microsoft.com/en-us/dotnet/core ausführen/tools/dotnet-add-reference – dbattaglia