我设计了一个常规模型对话框,模态对话框包含:
- 查找链接
- 部分视图(显示返回的结果)。
为了说明我的问题,你会在RouteValues中发现我以秒为单位发布当前时间。每次我点击,我都会得到相同的结果。
@Ajax.ActionLink("Find", "PopulateResults", "Contract", new { kind = DateTime.Now.Second },
new AjaxOptions
{
UpdateTargetId = "results",
HttpMethod = "POST",
InsertionMode = InsertionMode.Replace,
LoadingElementId = "progress"
}, new
{
@class = "button",
id = "FindButton"
}
)
控制器获取种值并将其传递给局部视图
[HttpPost]
[OutputCache(NoStore = true, VaryByParam = "", Duration = 0)]
public ActionResult PopulateResults(int kind)
{
return PartialView("PopulateResults", kind);
}
正如我所说,该值始终被缓存,并且不会更新。
更新:最初,我真的不想发布当前时间并在部分视图中显示它。 在我的模态对话框中,我有一个文本框,用于过滤返回的结果。实际上,会发生什么,文本框的值总是被缓存。
答案 0 :(得分:0)
我以秒为单位发布当前时间
您没有发布当前时间。您正在发布服务器呈现此页面时的时间(实际上不是时间,但只是第二个)。如果要发布当前时间,请使用客户端时间。