Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 从其他应用程序中删除HttpRuntime.Cache项_Asp.net Mvc 3_Caching_Sqlcachedependency - Fatal编程技术网

Asp.net mvc 3 从其他应用程序中删除HttpRuntime.Cache项

Asp.net mvc 3 从其他应用程序中删除HttpRuntime.Cache项,asp.net-mvc-3,caching,sqlcachedependency,Asp.net Mvc 3,Caching,Sqlcachedependency,我有一个管理应用程序,在其中操作数据库中的对象,还有一个公共asp.net mvc应用程序,主要用于查看这些对象 我已经为一些对象实现了一个简单的缓存,它使用HttpRuntime.Cache 我想从管理应用程序中使公共应用程序的缓存部分无效 最简单的解决方案是执行ClearCache()操作,在调用时清除缓存中的每条记录 但是使用使用缓存依赖项的缓存不是更好吗?我不知道哪一个最好用,怎么用。我在考虑sql依赖关系,但由于我正在进行缓存以跳过sql查询,所以我不确定这是否会很快 检查sql缓存依

我有一个管理应用程序,在其中操作数据库中的对象,还有一个公共asp.net mvc应用程序,主要用于查看这些对象

我已经为一些对象实现了一个简单的缓存,它使用HttpRuntime.Cache

我想从管理应用程序中使公共应用程序的缓存部分无效

最简单的解决方案是执行ClearCache()操作,在调用时清除缓存中的每条记录

但是使用使用缓存依赖项的缓存不是更好吗?我不知道哪一个最好用,怎么用。我在考虑sql依赖关系,但由于我正在进行缓存以跳过sql查询,所以我不确定这是否会很快


检查sql缓存依赖关系是否很慢?我希望在很多情况下使用缓存对象,每次检查sql依赖关系听起来都不太好。

我建议每个表都有sql依赖关系缓存,或者为假定一起处理的记录选择查询。您可以考虑为一些分区创建单独的缓存条目(例如,如果您有特定于国家的数据,则将每个国家的数据保存在具有适当SQL依赖性的单独的缓存条目中)。p> 我建议每个表都有SQL依赖项缓存,或者为假设一起处理的记录选择查询。您可以考虑为一些分区创建单独的缓存条目(例如,如果您有特定于国家的数据,则将每个国家的数据保存在具有适当SQL依赖性的单独的缓存条目中)。p> 您可以对其使用CacheDependency

如果有两个单独的应用程序。您可以使用文件依赖项选项。 (还有缓存键依赖项选项)

当您触摸应用程序中的特定文件(可能只是一个空文件)时。依赖于同一文件的其他应用程序缓存项将自动过期


您可以使用不同的文件使不同类别的缓存项过期。

您可以对其使用CacheDependency

如果有两个单独的应用程序。您可以使用文件依赖项选项。 (还有缓存键依赖项选项)

当您触摸应用程序中的特定文件(可能只是一个空文件)时。依赖于同一文件的其他应用程序缓存项将自动过期


您可以使用不同的文件使不同类别的缓存项过期。

这两个单独的ASP.NET应用程序是吗?一个是silverlight应用程序,另一个是ASP.NET应用程序。这两个单独的ASP.NET应用程序是吗?一个是silverlight应用程序,另一个是asp.net应用程序。实际上,我通过在delete方法上创建一个带有两个实现的ICacheProvider解决了这个问题:如果缓存是本地的,则删除HttpRuntime缓存,并调用远程控制器操作删除远程应用程序上的缓存元素。也可能有一个sql依赖实现,但我仍然不确定这是否是一个性能方面的好主意。实际上,我通过在delete方法上创建一个带有两个实现的ICacheProvider解决了这个问题:如果缓存是本地的,则删除HttpRuntime缓存,以及调用远程控制器操作以删除远程应用程序上的缓存元素。也可能有一个sql依赖实现,但我仍然不确定这在性能方面是否是一个好主意。