动态加载程序集的兼容性 [英] Compatibility of dynamically loaded assemblies

查看:24
本文介绍了动态加载程序集的兼容性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在运行时动态加载 dotnet 程序集.

假设我有 netcore 3.1 控制台应用程序:

  • 我可以加载 .net 标准程序集吗?如果是,我可以加载什么特定版本?
  • 我可以加载经典的 .net 程序集,例如 .net framework 4.8 吗?如果是,我还可以加载旧版本吗?

相反的情况,当我有 dotnet framework 4.8 控制台应用程序时:

  • 我可以加载 .net 标准程序集吗?
  • 我可以加载旧的经典 .net,如程序集、.net 框架 4.6 吗?

解决方案

.NET Standard 是一个接口 - 您可以调用的 API 版本列表.

.NET 标准可以被 .NET 框架和 .NET 核心引用.

<块引用>

这是什么意思?

您应该对类库使用 .Net 标准.

.NET 框架和 .NET 核心这两个目标是一个平台..Net 框架仅适用于 Windows,而 .Net 核心适用于所有三个(Windows/Linux/MacOS)操作系统.这些不应相互引用.

<块引用>

这就是 .Net 标准存在的原因.

以便快速回答您的问题.

  • 我可以加载 .net 标准程序集吗?如果是,我可以加载什么特定版本?是的,您应该使用 .Net 标准
  • 我可以加载经典的 .net 程序集,例如 .net framework 4.8 吗?如果是,我还可以加载旧版本吗?你可能可以,当然你不应该

相反的情况,当我有 dotnet framework 4.8 控制台应用程序时:

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆