Asp.net mvc 4 使用amplify js和MVC时在何处清除客户端缓存

Asp.net mvc 4 使用amplify js和MVC时在何处清除客户端缓存,asp.net-mvc-4,amplifyjs,Asp.net Mvc 4,Amplifyjs,我有一个MVC应用程序。我拥有的页面采用一些筛选条件,从服务器获取数据,并对数据执行一些其他操作。要求是当页面加载时,不应过滤任何数据,但一旦用户输入一些过滤条件并对Ajax调用和页面刷新执行任何操作,就需要存储和应用过滤条件。 我使用amplify.js存储用户选择的设置。 每当用户执行任何刷新/Ajax调用时,我都会存储过滤条件。 在$document.ready上,我再次应用筛选条件 问题是数据没有被清除。因此,当用户启动应用程序时,将应用筛选条件。 如果清除$document.ready

我有一个MVC应用程序。我拥有的页面采用一些筛选条件,从服务器获取数据,并对数据执行一些其他操作。要求是当页面加载时,不应过滤任何数据,但一旦用户输入一些过滤条件并对Ajax调用和页面刷新执行任何操作,就需要存储和应用过滤条件。 我使用amplify.js存储用户选择的设置。 每当用户执行任何刷新/Ajax调用时,我都会存储过滤条件。 在$document.ready上,我再次应用筛选条件

问题是数据没有被清除。因此,当用户启动应用程序时,将应用筛选条件。 如果清除$document.ready中的条件,则也会丢失有关用户操作的数据

那么,如何区分初始页面加载和随后的刷新/重定向/Ajax调用呢


下面是应用过滤器的代码

var filterData = amplify.store.localStorage(filterKey) ? JSON.parse(amplify.store.localStorage(filterKey)) : defaultFilterData;
applyFilters(filterData);
要存储filterData

amplify.store.localStorage(filterKey, ko.mapping.toJSON(filterData));

我所说的初始加载是指当应用程序第一次启动时。因为我面临的问题是,即使在我关闭应用程序并重新启动时,amplify也会存储数据。

我不知道您的应用程序是如何构造的,但根据您的问题,我想您可以设置一个会话变量,如果用户是第一次访问您的页面,请清除localStorage。 TempData也适用于这种情况,因为您可以设置一个变量,该变量将仅存在于第一个请求中

例如:

Session["firstRequest"] = true;


您可以在会话启动()事件或控制器中设置此变量。

请给我们看一些代码!如何定义“初始页面加载”?下面是应用过滤器的代码。
TempData["firstRequest"] = true;