【发布时间】:2016-02-05 14:28:44
【问题描述】:
我需要使用一个尚不支持 CoreCLR 的库(具体来说是 RabbitMQ.Client)。是否可以从 CoreCLR 可执行文件内部在 Linux 系统上使用该库的基于单声道的端口?如果有,是如何实现的?
【问题讨论】:
标签: linux mono dnx .net-core coreclr
我需要使用一个尚不支持 CoreCLR 的库(具体来说是 RabbitMQ.Client)。是否可以从 CoreCLR 可执行文件内部在 Linux 系统上使用该库的基于单声道的端口?如果有,是如何实现的?
【问题讨论】:
标签: linux mono dnx .net-core coreclr
在二进制级别是不可能的(除非使用适当的 PCL 配置文件)。 .NET Core 有一种不同的方法来排列程序集中的类,因此桌面 .NET Framework 上的一些程序集被分解为更小的程序集,并且类型被移动。由于此类更改,桌面目标程序集(来自 .NET 或 Mono)将无法在 .NET Core 上运行。
但这显然在源代码级别是可能的,因为有人尝试将 Mono 的 WinForms 移植到 .NET Core,
http://forums.dotnetfoundation.org/t/anyone-porting-winforms-mono-to-net-core/898/4
一旦创建了一个新的 .NET Core 库项目,源文件应该能够被继承(有一些修改甚至没有)。
但是,.NET Core 发展得太快了,这种尝试现在可能已经过时了。任何想在这个领域探索的人都可以按照这个例子再试一次。祝你好运。
【讨论】: