繁体   English   中英

MigraDoc 和 .NET Core 2.0

[英]MigraDoc and .NET Core 2.0

我为 PDF 生成制作了一个类库。 它是使用 PDFshart-MigraDoc(核心包*)实现的。 类库本身使用 .NET Standard 作为其目标框架。

我可以在经典 C# 项目(如 WinForms)中使用类库,但是如果我尝试将它与 .NET Core 2.0 一起使用,我会收到以下错误:

无法加载文件或程序集“System.Drawing.Common,Version=0.0.0.0,Culture=neutral,PublicKeyToken=xxxx”。 该系统找不到指定的文件。

我想这样做的原因可能是 MigraDoc 在其实现中使用了“System.Drawing”,(据我所知).NET Core 框架不支持它。

但是,这并没有真正解决我的问题,即我需要类库适用于所有 .NET 框架。 根据这篇文章的建议,我尝试包含 NuGet 包CoreCompat.System.Drawing 但这一直没有效果,可能是因为 MigraDoc 仍在尝试使用“原始” System.Drawing库。

有什么方法可以让我的类库适用于 .NET Core? 还是我运气不好……?

注意:MigraDoc Core Package 与 .NET Core Framework 无关。 名字的冲突只是巧合。

在 github 上找到了PDFSharp & MigraDoc的端口,它使用System.Drawing.Common并与 .Net Core 一起使用。

我有同样的并让它完全工作。

注意:您可能需要在 .Net Core 项目中添加System.Drawing.Common Nuget 包

MigraDoc/PDFsharp Core 包早在 .NET Core 发布之前就已创建。 “核心”对于那些 MigraDoc 包有不同的含义,它们确实使用 System.Drawing。

Core 包使用 System.Drawing 并不是一个错误。

.NET Core 有 PDFsharp 的第三方端口,如下所示:
https://github.com/groege/PdfSharpCore
也许这些端口之一是您的选择。

也许有 System.Drawing 的便携式替代品。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM