【问题标题】:Using Mono to complete Universal Windows Platform (.net core)使用Mono完成通用Windows平台(.net core)
【发布时间】:2016-05-18 00:54:01
【问题描述】:

我们正在使用一些旧的开源 .Net Framework 库,这些库依赖于 .Net Core 中没有的东西。 Mono 可以用来填充 .Net Framework 的其余部分吗?

具体来说,我正在考虑创建一个通用 Windows 类库,其中包含 Mono 中的所有内容(不包括一些 System 命名空间),它将命名空间从 System.* 更改为 MonoSupport.System.*。

当然,更好的方法是重新编写库的代码,使用不同的库,或者更有选择性地从 Mono 中获取内容。我希望将其作为临时措施。

(我想使用 iTextSharpLGPL,但它使用 XmlTextReader、带有 .Close() 的流、System.Security.Cryptography 等。库的付费版本does not support UWP either。)

编辑:我放弃了这个并重写了我的应用程序以使用 Apitron。在我尝试部署并发现它们不支持 .NET Native 之前,这非常有效。我现在正在等待一些库支持 UWP 上的 PDF 生成。

【问题讨论】:

  • 我知道,但我们正在努力。
  • 即将推出的 .NET 版 iText 7 有望与 UWP 兼容。

标签: mono itextsharp win-universal-app .net-core


【解决方案1】:

我不这么认为。以下直接原因

  • Mono 是 .NET Framework 的克隆,因此基于 mscorlib 思想,而 UWP 基于 System.Runtime。需要大量的额外努力。
  • UWP 应用 - 发布时 - 基于 .NET Native 运行时。此运行时在库实现中强制执行一些模式(例如,没有反射,没有类型的 C++ 实现等)。 Mono在AOT方面也很强,但我认为有龙。
  • 单声道是一个糟糕的选择。更好的是在 github 上发布的 .NET Framework 的 microsoft 参考源。

您在计划中投入的时间会非常长,最好直接在 corefx 中进行修复,然后等待 UWP 的下一个版本包含您的修复。

对于您的问题,我强烈建议您通过在 iTextSharpLGPL 上游提交解决问题,方法是显示新方法并删除关闭,或者仅复制 MIT 许可的 XmlTtextReader。但我强烈建议你,不要乱用加密货币;)

【讨论】:

    猜你喜欢
    • 2015-12-22
    • 2019-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多