Eine gemeinsame Klassenbibliothek, die sowohl von .NET Core als auch von .Net 4.5.2 verwendet wird.
Ich bin ziemlich neu in .Net Core, habe aber eine funktionierende Asp.Net Core-WebAPI-Site erstellt - jetzt möchte ich Code für ein anderes Projekt freigeben ...
Ich habe Visual Studio 2015 mit Update 3 installiert.Ich habe DotNetCore.1.0.0-VS2015Tools.Preview2.exe von @ installieHie.Ich möchte eine gemeinsam genutzte Bibliothek (Shared Library, PCL) erstellen, die von zwei anderen Bibliotheken verwendet werden kann. Sie enthält nur primitive Klassen / Interfaces ohne weitere Abhängigkeiten. Eine der konsumierenden Bibliotheken ist ein neues Vanille-Projekt, das auf "netstandard1.6" abzielt, die andere ist eine alte Client-Bibliothek, die auf .Net 4.5.2 abzielt (ich kann dieses auf 4.6.x upgraden, wenn ich muss).
Ich war im Kreis herum und kann nicht festlegen, dass die netstandard1.6-Bibliothek auf die PCL verweist. Mir wird nur mitgeteilt, dass die Typen fehlen:
Error CS0246: Der Typ- oder Namespace-Name 'SomeTypeHere' wurde nicht gefunden. (Fehlt eine using-Direktive oder ein Assemblyverweis?)
Die PCL mit dem Namen "ClassLibrary1" project.json wird automatisch generiert als:
{
"supports": {},
"dependencies": {
"Microsoft.NETCore.Portable.Compatibility": "1.0.1",
"NETStandard.Library": "1.6.0"
},
"frameworks": {
"netstandard1.1": {}
}
}
eine konsumierende Bibliothek project.json ist:
{
"version": "1.0.0-*",
"dependencies": {
"NETStandard.Library": "1.6.0",
"Newtonsoft.Json": "9.0.1"
},
"frameworks": {
"netstandard1.6": {
"dependencies": {
"ClassLibrary1": {
"target": "project"
}
}
}
}
}
Wie kann ich das zum Laufen bringen?
EDIT 07.07.2016:
Ich habe die folgende Lösung zur Verfügung gestellt, die mein Setup demonstriert:https: //github.com/JonnyWideFoot/netcore-prototyp Unter ExperimentClient :: GetLocationAsync erfahren Sie, wo ich die Vertragsbibliothek im .Net 4.5.2 / 4.6.x-Client verwenden möchte.