gpt4 book ai didi

c# - 在下游项目中使用中间件对象的 .NET Core 模式是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 12:05:31 25 4
gpt4 key购买 nike

想象一下 .NET Core Web 项目的以下项目结构。

Widget.UI 项目 (MVC) 调用 Widget.Business 调用 Widget.Services 调用 Widget.Repository项目。

假设 Widget.Services 项目想要使用 Memcached 实现分布式缓存.

模式是将 Memcached 添加到 Startup.ConfigureServices 和 .Configure 中的中间件,将它们传递到 Controller 的构造函数中,然后使用 Memcached 在堆栈中一直构建构造函数吗?

或者在 Widget.Services 项目中 var cache = new MemcachedClient() 会更好吗?

最佳答案

Memcached 将成为您的基础架构。因此,根据您的设计,服务层应该定义现金抽象,并且这个抽象的实现(使用 Memcached)可以(例如)在 Widget.Infrastructure 项目中。

在存储库层缓存也可能有很好的理由。但这取决于您的需求。然后,您应该在服务层之外定义现金抽象。

服务配置将与任何其他服务(在 Startup.ConfigureServices 中)相同,您可以在需要的地方通过构造函数注入(inject)现金基础设施。

关于c# - 在下游项目中使用中间件对象的 .NET Core 模式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55249532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com