MVC - Outputcache - post参数- VaryByParam无效

本文关键字:VaryByParam 无效 参数 post Outputcache MVC | 更新日期: 2023-09-27 18:12:02

我有一个MVC页面被击中的正常形式的2个post参数。

供应商id和还款。

在添加表单之前,我对如下操作使用Outputcache:

[OutputCache(Duration = 86400, VaryByCustom = "pageurl")]
public override ActionResult Load(int ControlId)
{

url改变后一切正常

现在我想让它随post参数变化,所以我把它改成:

[OutputCache(Duration = 86400, VaryByCustom = "pageurl", VaryByParam = "SupplierId;Repayment")]
public override ActionResult Load(int ControlId)
{

这不起作用。它不会为不同的post参数缓存单独的结果。如果我用不同的post参数请求相同的url,我一直得到初始缓存的结果。Visual Studio中的断点也没有被击中。

谁能告诉我我可能做错了什么?

MVC - Outputcache - post参数- VaryByParam无效

VaryByParam与传入此方法的参数相关。您唯一的参数是int ControlId

对于VaryByParam = "SupplierId;Repayment",您需要:

[OutputCache(Duration = 86400, VaryByCustom = "pageurl", VaryByParam = "SupplierId;Repayment")]
public override ActionResult Load(int SupplierId, int Repayment)
{
}