TL; DR 有人能指出我通过拦截添加到解决方案的缓存系统的实施吗?
我正在重构我的一个解决方案,以便通过Unity Intercept实现跨领域的关注。我已经阅读了MSFT的指南,现在我想我可以很容易地实现拦截行为。
然而,我想知道缓存;我想在整个解决方案中始终如一地使用缓存区域和密钥。此外,我在缓存系统上有过期的密钥指定配置。
在Unity的开发者指南中的一个例子中,它检查方法名称 - 这是一种不好的方法,因为它意味着每次新的类/方法必须使用缓存(显然)时改变实现。
我有这个(疯狂)想法实现一个可配置的拦截器,它学习如何从给定的参数组成区域和键,并且可以为每个类(类型)/方法配置。然而,这会给配置带来很多责任;我不喜欢我在* .config文件中编程的感觉。
正如你所看到的,我对如何解决这个问题感到有些迷茫。我不喜欢单身人士,现在缓存系统是一个单身人士,解决方案无处不在。有人可以链接我一个关于我应该如何处理这个问题的好文档吗?是否可以添加缓存并在缓存中定义正确的密钥/区域?
答案 0 :(得分:0)
对类似问题的快速搜索引导我进入CodePlex上的"Attribute Based Cache using Unity Interception"项目。整个项目看起来在某个Alpha阶段被放弃,但它应该为您提供开始的基线。