我应该将Excel/PDF Generator类或功能放在洋葱/干净体系结构中?

问题描述 投票:0回答:1

我想在dotnet core 6中的新解决方案中添加excel和pdf生成器。我遵循此模板: https://github.com/iammukeshm/cleanarchitecture.webapi

or

https://codewithmukesh.com/blog/onion-architecture-in-aspnet-core/#getting_started_with_onion_architecture

dotnet核心的非常好的干净体系结构教程。在我的知识中,Excel Generator或PDF发电机将放置在

Application/Features


例如,在Excel文件中下载发票报告,因此路径将为

Solution |- Application |- Features |- InvoiceFeature |- Commands |- Queries |- Generates |- GenerateInvoiceByDateRangeInExcel.cs

controllers

中我会添加

[HttpPost] public async Task<IActionResult> DownloadExcel(GenerateInvoiceByDateRangeInExcel command) { return File(await Mediator.Send(command)); }
,我不先尝试这个想法,所以回到我的问题

我应该将Excel/PDF Generator类或功能放在洋葱/清洁体系结构中? 以及如何使用MediaTr

正确使用它

c# excel .net-core clean-architecture onion-architecture
1个回答
0
投票
File

(或DB或其他一些基础架构组件)中。我假设您使用库生成PDF(或Excel),该PDF(或Excel)需要(业务)数据才能放入PDF中,以准备pdf之前,这是一代人发生的,而不是时期(即,不是关于流生成的)。要执行您必须创建的一代,例如发票模型类的InvoICEPDFGENERATOR类,该类别将能够生成PDF,作为文件或数据库记录(SQL或其他)或其他内容,或基于收到的参数收到的发票对象。位置/使用InvoItePdfGenerator,就像它是存储库实现一样(声明其接口);尽管不是经典的存储库,但以类似的方式使用它,您将使用存储库类。如果我们以非常简单的术语来定义级存储库,例如“负责持续使用模型对象的东西”,然后InvoItePdfGenerator将是一个经典的存储库。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.