C# OutputCache如何添加访问计数?
我想添加每人请求操作的访问次数。 我的行动是:C# OutputCache如何添加访问计数?,c#,asp.net-mvc,outputcache,action-filter,C#,Asp.net Mvc,Outputcache,Action Filter,我想添加每人请求操作的访问次数。 我的行动是: public async Task<ActionResult> Index() { // add visit count VisitCount(); return View(await db.Departments.ToListAsync()); } 并访问cont: public class VisitCoutFilter: ActionFilterAttribute { public overrid
public async Task<ActionResult> Index()
{
// add visit count
VisitCount();
return View(await db.Departments.ToListAsync());
}
并访问cont:
public class VisitCoutFilter: ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
//do visit
// break ponit
base.OnActionExecuting(filterContext);
}
}
好的,我了解您的问题和解决方案: 顺便说一下,
OutputCacheAttribute
有一些限制,并且存在一个
由Paul Hiles开发的名为
有助于克服这些限制
好的,我了解您的问题和解决方案: 顺便说一下,
OutputCacheAttribute
有一些限制,并且存在一个
由Paul Hiles开发的名为
有助于克服这些限制
问题是,
OutputCache
不会运行操作方法,因为它会缓存整个视图。它将从缓存中检索视图。所以,你必须问问自己,你到底想要实现什么。演出怎么用?通过减少往返数据库的次数
最小化数据库往返
[OutputCache(Duration=100, VaryByParam="none", Location=OutputCacheLocation.Client, NoStore=true)]
public ActionResult Index(){}
问题是,
OutputCache
不会运行操作方法,因为它会缓存整个视图。它将从缓存中检索视图。所以,你必须问问自己,你到底想要实现什么。演出怎么用?通过减少往返数据库的次数
最小化数据库往返
[OutputCache(Duration=100, VaryByParam="none", Location=OutputCacheLocation.Client, NoStore=true)]
public ActionResult Index(){}
我这样做并将visitcount移动到其中。但不再运行@shahroz你需要改变方法。就像我写的一样,我需要为它添加OutputCache(Duration=30)。它只运行每个输出缓存Duration。我这样做并将visitcount移动到其中。但不会再次运行@shahroz你需要改变方法。就像我写的一样,我需要为它添加OutputCache(Duration=30)。它只在每个输出缓存持续时间内运行。