【问题标题】:How to call/reference Crystal Reports from .Net Core如何从 .Net Core 调用/引用 Crystal Reports
【发布时间】:2020-05-28 14:30:19
【问题描述】:

我有一个包含多个项目的 Visual Studio 解决方案。

  • 解决方案
    • 域层(类库> .Net Core 2.2)
      • 保存所有数据库模型
    • EntityFramework(类库> .Net Core 2.2)
      • 保持与数据库的所有交互。我参考了 Microsoft.EntityFrameworkCore 和 Oracle.EntityFrameworkCore
    • 表示层(WPF Windows 应用程序> .Net Core 3.1)
      • 是应用程序的主要交互方式

我正处于需要集成报告和打印报告的地步。我一直在我的应用程序中使用 Crystal Reports(非常成功)。但是,由于 Crystal 需要 Framework 4.5,我不知道如何使其工作。

我已经创建了我的报告对象并对其进行了测试。他们在自己的独立解决方案中工作得很好。一旦我在我的核心应用程序中引用了框架应用程序,我就会中断。特别是当我尝试创建一个 Crystal 'ReportDocument' 对象时,我会崩溃。我已经看到过 SO(并经过测试),由于 DLL 不同,您不能将 .Net Core 与 .Net Framework 混合使用。

关于如何让报告/打印工作的任何建议?我对 Crystal Reports 也不挑剔。

【问题讨论】:

    标签: c# crystal-reports


    【解决方案1】:

    您不走运,因为它不受支持。我鼓励您寻找其他替代方案

    来自 Crystal Reports 供应商网站:

    因此,将您的核心项目更新到完整的 4.7.1,它应该可以工作。我只安装了 4.7.1,它适用于我现有的设置为 4.0 的 ASP.NET 项目。

    需要明确的是,不支持 Framework 2.0 Core

    来源:Crystal Reports in ASP .NET Core 2.0

    【讨论】:

    • 很明显,SAP 的 Don 并不了解 .Net Core 是什么,因为他认为这只是 .Net Framework Client Profile 的另一个名称。希望自从 2018 年的回复以来情况有所改变。:)
    • @JeffNichols 这就是答案。您应该考虑将此问题标记为已回答。
    【解决方案2】:

    您不妨重新考虑一下您的方法。您真的必须将所有内容捆绑到一个单一的应用程序中吗?

    您是否考虑过一些关注点分离?我想说的是,您可以将您的报告服务抽象为一个单独的项目/服务,并将您需要的数据传递给我们,比如说电汇——例如。

    然后,您可以随意构建应用程序逻辑。 我的想法是:

    • sln

      • 用户界面
      • API ?
      • 基础设施
    • sln

      • API (wcf/gRPC/REST)
      • 报告服务

    您可能还想考虑 gRPC,如果有的话,它可能会与您的遗留代码集成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-01
      • 2021-09-26
      • 2013-01-01
      • 2011-10-24
      • 2012-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多