在.NET Core 2中使用Microsoft.AspNetCore.All时会遇到什么问题?

Ada*_*hts 5 .net-core

建议Microsoft.AspNetCore.All在.NET Core 2中使用,因为它简化了依赖关系,并使用树振动器魔法来不会破坏您发布的内容.

我遇到了一个问题:使用引用的库时StackExchange.Redis,我最终将引发冲突作为Microsoft.AspNetCore.All引用内容StackExchange.Redis.StrongName.请参阅问题VS.NET 2017强制使用ASP.NET 2.0 Core应用程序中的StackExchange.Redis 1.2.4.0获取更多信息.如果我坚持单独引用依赖项,那么我可以避免这种冲突并编译.

除了在你不使用的东西之间发生冲突之外Microsoft.AspNetCore.All,由于这个建议,你会遇到哪些其他问题?

Bru*_*cia 5

恕我直言,这不是一个常见的问题,因为在两个不同的包中,没有很多库以相同的类型发布两次:一个是强名,一个是非.特别是由metapackage引用Microsoft.AspNetCore.All 2.0.0

你肯定不是唯一一个有这个StackExchange.Redis问题的人(我已经两次偶然发现了它)但是维护人员正计划在2.0版本上删除它StrongName.

您可以尝试使用此处extern alias讨论的方法处理它.

一个快速的方法是针对相同的包AspNetCore目标(StrongName一个).如果它只是您使用的解决方案中的项目,那么这很容易入侵.

另一个是目标Microsoft.Extensions.Caching.Redis.这就是元数据包依赖的东西.

直到SE.Redis发布2.0.0版本.