用于替换缓存的设计模式

Ram*_*Ram 3 c# oop design-patterns

在我们的程序中,我们将大量数据存储在缓存中.缓存是一个字典.由于大量数据是内存中的,我们计划使用数据库而不是字典.因此,字典中曾经的所有数据都将被移动到数据库中的表中.现在的问题是,字典缓存已在项目的许多地方使用.请建议我一个设计模式,用最少的代码更改有效地用数据库替换字典缓存.

缓存将类似于Dictionary(字符串,MyBusinessObject).字典键将是"Id".MyBusinessObject将拥有其属性中的数据.例如,myBusinessObject.CustomerName,myBusinessObject.CustomerAge.在我的整个项目中,各种模块将在字典中搜索Id(密钥).

rer*_*run 9

Dictionary实现了IDictionary<TKey, TValue>你应该在数据库上创建一个也实现了IDictionary<TKey, TValue>Then 的外观然后确保你不再使用具体的字典.最后,您需要为新抽象创建一个工厂,这将允许您将其替换为模拟测试.