Ich habe eine einfache Datenstruktur zu NuGet veröffentlicht, die halb populär ist. Es verwendet keine speziellen Windows-APIs, daher würde ich erwarten, dass es bereits mit UWP kompatibel ist.Wie kann ich eine vorhandene C# -Bibliothek UWP-kompatibel machen?
jedoch, wenn Menschen versuchen, einen Verweis durch NuGet hinzuzufügen, sehen sie
< Projekt> mit UAP nicht kompatibel ist, Version = v10.0.
Einige Pakete sind nicht kompatibel mit UAP, Version = v10.0.
Was muss ich tun, um mein Projekt kompatibel mit UWP(während noch halten die Kompatibilität mit nicht-UWP Projekte, einschließlich .NET 2.0-Unterstützung) zu machen? Ich habe online Antworten gelesen von "fügen Sie diese .json Datei" zu "Sie müssen ein völlig separates Projekt" pflegen!
Sie wollen also nur eine dll \ Projekt haben, die mit allen Zielrahmen kompatibel ist? Denn wenn nicht, können Sie einfach mehrere DLLs auf verschiedene Frameworks in einem nugget-Paket setzen, und die richtige wird ausgewählt, wenn der Benutzer Ihr Paket installiert. – Evk
@Evk: Kann ich das mit verschiedenen Projektkonfigurationen machen? Oder brauche ich separate Projekte? In jedem Fall, wie mache ich das? Ich habe noch nie etwas mit UWP gemacht und versuche nach Tutorials zum Schreiben von UWP-kompatiblen Bibliotheken zu suchen, es erscheint absurd unnötig kompliziert. –
Ich bevorzuge Quelltext-Sharing, weil Dinge wie PCL zu viele Einschränkungen haben. Sie erstellen einfach ein UWP-Bibliotheksprojekt in Visual Studio, fügen alle Dateien aus Ihrem .NET-Projekt als Links hinzu (so haben Sie eine einzelne Codebasis) und kompilieren dieses UWP-Projekt. Natürlich wird es nicht so einfach sein, in diesem Fall können Sie bedingte Kompilierungssymbole verwenden (#if WINDOWS_UWP // UWP-spezifischer Code #else // Nicht-UWP-Code). Sie können auch die Shared Project-Funktion von Visual Studio verwenden. Es ist nah daran, Dateien als Links hinzuzufügen, wie oben beschrieben, aber bequemer. Dann packst du beide in ein Nugget-Paket. – Evk