所以.. 我最近在研究洋葱架构,也阅读了很多关于它的文章,这是大多数博客文章/指南/等唯一的内容。没有解释的是,我在哪里保存图像上传或一些计算等逻辑?
现在我得到了这样的东西
-app.core
<-- 通过简单的添加、更新、删除、获取、获取所有内容,为存储库保留域模型和接口(interface)
-app.infrastructure
<-- 实现了我的 app.core
存储库并且还有服务,包含 IoC 模块和映射器设置
-app.application
<- 用户向 Controller 发出请求, Controller 从 app.infrastructure
调用服务并取回 DTO 模型
那么..我应该把这两件事放在哪里?因为我觉得洋葱所做的就是添加、更新、删除、获取、获取所有
我在哪里保存更复杂的代码……比如文件上传?暂停
最佳答案
您的域(或核心)不必是无逻辑的。事实上,我会说您的业务逻辑应该在您的域中,因为您的业务逻辑是您应用程序的核心。这才是真正赋予您的商业值(value)的东西。我会把那个逻辑放在那里。在编写该逻辑时,您可能会注意到您需要某些基础结构调用才能保存到文件系统或发送电子邮件。然后,您只需将接口(interface)添加到您的核心,并假设它将由外层实现(并注入(inject))。
关于c# - 在洋葱架构中,我在哪里保存文件上传和计算的逻辑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45065261/