asp.net-mvc – 使用Repository/Service Pattern和MVC时缓存数据对象

我有一个基于MVC的网站,它使用Repository /服务模式进行数据访问。
服务被编写为在大多数应用程序(控制台,winform和web)中使用。目前,控制器直接与服务器通信。这限制了应用正确缓存的能力。

我看到我的选项如下:

>为web应用程序编写包装器,它实现了进行缓存的IWhatEverService。
>通过缓存每个Action的ViewData在每个控制器中应用缓存。
>不要担心数据缓存,只需为每个Action实现OutputCaching。

我可以看到每个的利弊。什么是/应该的最佳实践是使用Repository /服务进行缓存

解决方法

最简单的方法是在您的存储库提供程序中处理缓存。这样,您不必更改其余应用程序中的任何代码;它将忽略数据是从缓存而不是存储库提供的。

所以,我创建一个接口,控制器用来与后端通信,在实现这里我将添加缓存逻辑。把它包装在一个漂亮的弓与一些DI,你的应用程序将设置为容易测试。

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....