2017-02-10 2 views
5

Ich habe eine Bibliothek erstellt, die verwendet: Generika, Erweiterungsmethoden und Func Delegate. Func Delegat ist das meiste neue Feature zu .NET (Version 3.5) in der Bibliothek. Als ich es in nuget veröffentlichte, zielte das Projekt auf die .NET-Version 4.5.2, aber als ich versuchte, es in ein Projekt zu installieren, das auf Version 4.5 abzielte, schlug es fehl.Einfachste Möglichkeit, mehrere Frameworks in niget zu targetieren?

So stellen Sie sicher, dass das Paket in jedem Projekt installiert wird, das auf .NET 3.5 und höhere Versionen abzielt, sollte ich das Zielframework in der Bibliothek auf 3.5 ändern oder ich sollte die Verzeichniskonvention verwenden und für jedes eine separate DLL erstellen Rahmen, erklärt hier:

Supporting multiple .NET framework versions

Antwort

3

Ziel das Paket für 3,5, was bedeutet, den Ordner lib so sein sollte.

lib \ net35

Wenn ein Paket Ziele net35, kann es in jedem Projekt installiert werden, die .NET 3.5 oder höher als Ziel hat.

+0

Also, die Änderung des Ziel-Framework wird nur die Arbeit machen? weil ich meine Bibliothek mit dieser Struktur nicht gebaut habe: lib \ {net version} –

+0

Ja, das Ändern des Zielframeworks wird es für Sie tun. –

+0

Aus Neugier, warum nicht nur diesen Ansatz anstelle der Ordnerkonvention verwenden? Das Targeting der höchsten in der Bibliothek verwendeten Version ist einfacher und bequemer als das Erstellen einer Assembly für jede Framework-Version? –

Verwandte Themen