2017-10-13 2 views
4

Die Empfehlung ist, in .NET Core 2 Microsoft.AspNetCore.All zu verwenden, da es Abhängigkeiten vereinfacht und Tree Shaker-Magie verwendet, um nicht aufzublähen, was Sie veröffentlichen.Welche Probleme können Sie bei der Verwendung von Microsoft.AspNetCore.All in .NET Core 2 haben?

Ich stieß auf ein Problem beim Verschieben: Bei der Verwendung einer Bibliothek, die StackExchange.Redis verweist, endete ich mit einem Konflikt als etwas innerhalb Microsoft.AspNetCore.All Referenzen StackExchange.Redis.StrongName. Siehe Frage VS.NET 2017 forces using StackExchange.Redis 1.2.4.0 in ASP.NET 2.0 Core app für weitere Informationen. Wenn ich mich auf Abhängigkeiten einzeln beziehe, vermeide ich diesen Konflikt und kann kompilieren.

Abgesehen von Konflikten zwischen Dingen, die Sie nicht von Microsoft.AspNetCore.All verwenden, welche anderen Probleme könnten Sie aufgrund dieser Empfehlung haben?

+0

Mögliche Duplikate von [Pro und Kontra von Microsoft.AspNetCore.All Metapaket] (https://StackOverflow.com/questions/46592816/pros-and-cons-of-microsoft-aspnetcore-all-metapackage) – Set

+0

Diese Frage wurde geschlossen, da es hauptsächlich auf Meinungen basiert. Bearbeitete Frage, um sich speziell auf mögliche Probleme zu konzentrieren. – Knightsy

Antwort

3

IMHO ist es kein übliches Problem, da es nicht viele Bibliotheken gibt, die zweimal mit den gleichen Typen veröffentlicht wurden, in zwei verschiedenen Paketen: einem stark benannt und einem nicht. Vor allem durch die metapackage verwiesen wird Microsoft.AspNetCore.All 2.0.0

Sie sind definitiv nicht der einzige mit diesem Problem StackExchange.Redis (ich über ihn stolperte schon zweimal), aber die Maintainer planen drop the StrongName package on version 2.0.

Sie können versuchen, es mit der extern alias Ansatz diskutiert here zu behandeln.

Ein schneller Weg, um das gleiche Paket AspNetCore Ziele (die StrongName ein Ziel). Wenn es nur ein Projekt innerhalb einer Lösung ist, mit der Sie arbeiten, ist es ein einfacher Hack.

Eine andere ist Ziel Microsoft.Extensions.Caching.Redis. Davon hängt das Metapaket ab.

Das ist, bis SE.Redis Version 2.0.0 veröffentlicht.

Verwandte Themen