Wie verwende ich System.Daten in eine .NET-Core-RC2-Konsole app (Linux, Debian 8)?
Habe ich installiert .NET-Core-RC2 auf einem Debian-8 amd64-system und würde es gerne testen wenn es möglich ist, eine Abfrage einer Instanz von Microsoft SQL Server.
So, ich möchte noch hinzufügen, dass mir für mein Projekt eine Abhängigkeit der System.Data.SqlClient
Montage.
Derzeit meine Projekt-Datei erstellt, durch ausführen der dotnet new
CLI-tool sieht wie folgt aus:
{
"version": "1.0.0-*",
"buildOptions": {
"emitEntryPoint": true
},
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.0-rc2-3002702"
}
},
"frameworks": {
"netcoreapp1.0": {
"imports": "dnxcore50"
}
}
}
Mit diese Antwort, um eine ähnliche Abfrage, ich war in der Lage, fügen Sie einen Verweis auf System.Data.Common
änderung der
"frameworks": {
"netcoreapp1.0": {
"imports": "dnxcore50"
}
}
fragment
"frameworks": {
"netcoreapp1.0": {
"imports": "dnxcore50",
"dependencies": {
"System.Data.Common": "*"
}
}
}
die dotnet restore
NuGet herunterladen einen Haufen Zeug.
Dann habe ich versucht, das zu ändern-fragment zu Lesen
"frameworks": {
"netcoreapp1.0": {
"imports": "dnxcore50",
"dependencies": {
"System.Data.SqlClient": "*"
}
}
}
aber NuGet sagt, es ist
Nicht lösen " - System.Daten.SqlClient - ' für '.NETCoreApp,Version=v1.0'.
Wenn ich den versions-string zu Lesen, "4.1.0-rc3-*" die Fehlermeldung wird immer konkreter:
Nicht lösen " - System.Daten.SqlClient - (>= 4.1.0-rc3)' für '.NETCoreApp,Version=v1.0'.
Was ich bin verwirrt, ist, dass das NuGet-Paket-Galerie gewidmet .NET Core explizit Listen System.Data.SqlClient
.
Also, was könnte ich tun, um fügen Sie einen Verweis auf System.Data.SqlClient
Montage an meinem Projekt und habe NuGet herunterladen?
On a side note, ich bin derzeit rund um das Spiel in einer einfachen Konsole, die nur die dotnet
CLI-tool. Gibt es eine Möglichkeit zum verwalten von Projekt-Abhängigkeiten für eine .NET-Core-Projekt, ohne auf die Installation von IDEs?
"4.1.0-*"
. Das wird (momentan) aus irgendeinem Grund bekommen 4.1.0-rc2-24027
die funktioniert.das funktionierte, danke!
Für die Suche nach diesem post: ich konnte nicht machen
System.Data.SqlClient
loggen in eine Instanz von Microsoft SQL Server 2005 und eingereicht ein Problem zu diesem problem.InformationsquelleAutor kostix | 2016-05-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie poke schon kommentiert in dem Kommentar ist richtig. Geben Sie eine version auf
System.Data.SqlClient
macht Ihre Wiederherstellung glücklich 😉Warum ist das so?
System.Data.SqlClient
besteht in der http://nuget.org Galerie. Nicht die Angabe einer version ("") ist nicht gestattet, außerhalb der Grenzen des Projekts (wie ein nuget feed-Paket) und die Angabe ausschließlich ein star"*"
(die Sie nie tun sollten, das es ermöglicht, aktuelle änderungen) stellen Sie die höchste verfügbare version. Da es keine stabilen Sterne werden nichts finden (es gibt einige Magie mit den Strichen dahinter). Die RC2-version der Bibliothek ist die erwähnte 4.1.0-rc2-24027 und wenn Sie Sie bitten, mit 4.1.0-rc2-* es wird die höchste von der RC2 baut (aber es gibt nur eine). Im VergleichSystem.Data.Common
einen öffentlichen release auf nuget.org für die Universal-Windows-Plattform und findet sich aus diesem Grund.Die RC3 ist die nächste Version und nur auf Entwickler-feeds aus den .NET-Core-und ASP.NET Core-team und nicht der öffentlichen nuget feed. Sie sollten nicht mit Ihnen spielen.
Danke dir (und @poke): es ist gut zu wissen, dass die vorgeschlagene Lösung ist nicht Magie, sondern das zu erwartende Verhalten.
Eine schnelle Ergänzung zu dieser Antwort: Die Standard-feed ist nicht myget aber die "normalen" nuget feed. Die Sterne (
"*"
) version der Abhängigkeit immer das neueste stabil - version von einem Paket. Also fürSystem.Data.Common
erhalten Sie4.0.0
; es ist nicht eine stabileSystem.Data.SqlClient
aber so, dass schlägt fehl. Können Sie bestätigen, welche version wird eigentlich verwendet, indem man dieproject.lock.json
nachdotnet restore
.Verstehe ich richtig, dass sollte ich ein anderes Projekt, side-by-side mit dem aktuellen ein, die verlangen, eine andere version der
System.Data.SqlClient
, NuGet wird in der Lage sein zu Holen, dass die andere version auch, halten Sie beide, in welcher Ort hält es Sie und das Projekt build-tools werden in der Lage sein zu Holen die aufgeführten spezifischen version für jedes Projekt? (Nicht vertraut mit NuGet, sorry).Ja, Sie können unterschiedliche Projekte erfordern unterschiedliche Versionen von Abhängigkeiten und
dotnet restore
wird, stellen Sie sicher, dass die richtigen Versionen sind verfügbar für jedes Projekt. Die Pakete werden lokal zwischengespeichert, in%HOME%\.nuget\packages
oder abgeholt als notwendig. Die ganze Schönheit .NET Core ist, dass Sie nur davon abhängen, was Sie brauchen, anstatt immer den Versand mit den vollen .NET Framework, die kommt nur in wenigen Versionen (und upgrades, die alle Anwendungen, die darauf ausgeführt).InformationsquelleAutor Thomas
wenn Sie im Projekt.json-Datei, die intellisense-führen Sie nun, wenn Sie haben, aktualisiert die Visual studio mit den neuesten Tools zur Verfügung..
Habe ich noch folgende in den Abhängigkeiten element und es funktioniert perfekt..
"- System.Daten.SqlClient": "4.1.0-rc2-24027",
InformationsquelleAutor Kiran