【发布时间】:2019-11-11 05:44:50
【问题描述】:
VS2019 中的 .Net Core 控制台模板将 Microsoft.NETCore.App 元包添加为“SDK”,其中包括对 .NetFramework 库的依赖项。
例如,为什么将System.ServiceProcess.dll(一个.NetFramework 程序集)列为依赖项而不是System.ServiceProcess.ServiceController.dll(等效的.NetCore 程序集)?
要实际使用 System.ServiceProcess.dll 中包含的类型,您需要添加对 System.ServiceProcess.ServiceController nuget 包的引用。我很困惑为什么 NetCore.App SDK 会将 .NetFramework 程序集列为依赖项,特别是考虑到访问该程序集中包含的类型需要额外的 nuget 包
【问题讨论】:
-
很遗憾,您忘记使用 ILSpy 之类的工具从 .NET Core 和 .NET Framework 打开
System.ServiceProcess.dll。那么显然它们是完全不同的。 .NET Core 仅包含几个类型转发定义,只有引用System.ServiceProcess.ServiceController才能生效。不要被名称所迷惑。 -
其实我做到了!我很困惑为什么 .net 框架程序集被列为 SDK 依赖项。他们的目的是什么?我认为这与作为 SDK 的“元包”与 .net 核心使用的实际 nuget 包之间的区别有关。
标签: .net-core