【发布时间】:2022-04-29 23:32:27
【问题描述】:
我想我知道这个问题的答案,但想确定一下。我们正试图涉足 .net 核心。我们想在 .net core 中编写一些 dll,但我们希望避免将 .net core 运行时推送到每个工作站。我知道如果你正在做一个 .net core exe,你可以将运行时嵌入到应用程序中,这样你就不必在每台机器上物理安装 .net core。
我们推送的所有机器都是已经安装了 .net 框架的 Windows 机器。如果我们想使用能够使用 .net 核心 dll,那么我们就必须安装 .net 核心运行时,不是吗?
谢谢....
【问题讨论】:
-
试试吧。反正有很多重复的问题,但是用两个项目创建一个解决方案并尝试从另一个项目中引用一个解决方案会更快
-
无论如何,如果您希望您的代码可重用,您应该创建 .NET Standard 库。完整或核心库将期望找到 BCL 类的完整或核心版本。标准库将使用可执行文件的运行时提供的类
-
要将 dll 用于非核心应用程序,您需要使用 .net 标准并多目标您的 dll,它将为您在包中指定的每个框架类型构建库。
-
你不能,.netcore 程序集以桌面版框架中不可用的运行时程序集为目标。这是一个完全不同的运行时,例如完全不同的 CLR 版本,从文档中不那么容易看到。定位 .netstandard 是一种逐渐切换的方式,但要注意会丢失很多类。
-
.NET Standard 是面向 .NET Core 和 .NET Framework 的不错选择。目前肯定是有限的,但正在改善。请查找兼容版本here
标签: .net-core