Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.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 用于电子商务项目的MVC4缓存数据库_Asp.net_Asp.net Mvc_Asp.net Mvc 4_Caching_Sqlcachedependency - Fatal编程技术网

Asp.net 用于电子商务项目的MVC4缓存数据库

Asp.net 用于电子商务项目的MVC4缓存数据库,asp.net,asp.net-mvc,asp.net-mvc-4,caching,sqlcachedependency,Asp.net,Asp.net Mvc,Asp.net Mvc 4,Caching,Sqlcachedependency,我有一个MVC4项目的电子商务即将完成。我将sqldependecy与outputcache一起使用。但最好的办法是什么? 产品详细信息页面? 分类页面有哪些产品列表? 过滤页面?布拉布拉 你能帮我做一下缓存吗?(我在项目中使用sql server和linq to sql) 榜样 [OutputCache(Duration=Int32.MaxValue,SqlDependency=“Demo:product”)] public ActionResult getproducts(int-id、in

我有一个MVC4项目的电子商务即将完成。我将sqldependecy与outputcache一起使用。但最好的办法是什么? 产品详细信息页面? 分类页面有哪些产品列表? 过滤页面?布拉布拉

你能帮我做一下缓存吗?(我在项目中使用sql server和linq to sql) 榜样

[OutputCache(Duration=Int32.MaxValue,SqlDependency=“Demo:product”)]

public ActionResult getproducts(int-id、int-lastid、字符串过滤器) {

我使用参数从sql获取数据

}


是这样吗?还是应该缓存查询数据?用于分页的lastid。过滤数据的过滤参数。id意味着categoryid

让我们从头开始:我假设您想要优化您的webshop,这就是为什么您需要一些缓存机制。 您选择使用OutputCache可能是因为它易于使用,而且是现成的。 正如您可能知道的,OutputCache缓存来自服务器的响应,因此它不直接与缓存sql查询或数据连接。因此,我首先建议您考虑您真正需要什么类型的缓存—输出缓存(位于System.Web.Configuration.OutputCacheSection中)、数据缓存(位于System.Web.Caching.cache中)或两者兼而有之

假设您选择了OutputCache。您需要确保可以更改服务器响应的所有内容都应作为缓存参数发送。因此,对于产品页面,这可能至少是一个ProductId,对于CategoryPage(ProductListPage),这可能是CategoryId、PageId、PageSize、一些排序参数、过滤器参数(如果使用过滤)等

需要考虑的参数越多,缓存所有可能的参数组合就越耗时。
作为一个例子,我将使用OutuScRebug用于产品页面,但我会考虑使用它来分类(PositListPage),特别是在使用过滤器、分页、排序等情况下,

谢谢您的回复。正如你所说,我需要优化我的网店。使用具有sql依赖性的outputcache机制很容易。但正如您所说的,由于分页和过滤bla-bla,对于category(productlist)页面是不明智的。在这种情况下,我应该使用什么?如果我在每个页面查询中缓存命令,我需要再次缓存。在输出缓存中也是如此。我应该将varybyparam与sqldependecy一起使用吗?我需要数据缓存。