C# 如何在会话中更好地存储客户端的筛选器
几乎我们应用程序的每个页面上都有几个过滤器。我目前的目标是实现一种机制来存储过滤器,并在用户重新打开页面时预先选择它们,这样至少在一个会话期间,用户在打开页面或从一页移动到另一页时,不必反复选择过滤器 该应用程序是用ASP.NETMVC编写的,我们使用了大量javascript来处理过滤。目前,很多过滤只在客户端进行(例如,检索网格的完整数据,所有进一步的过滤只在客户端进行) 我在想这些步骤:C# 如何在会话中更好地存储客户端的筛选器,c#,javascript,asp.net-mvc,filter,C#,Javascript,Asp.net Mvc,Filter,几乎我们应用程序的每个页面上都有几个过滤器。我目前的目标是实现一种机制来存储过滤器,并在用户重新打开页面时预先选择它们,这样至少在一个会话期间,用户在打开页面或从一页移动到另一页时,不必反复选择过滤器 该应用程序是用ASP.NETMVC编写的,我们使用了大量javascript来处理过滤。目前,很多过滤只在客户端进行(例如,检索网格的完整数据,所有进一步的过滤只在客户端进行) 我在想这些步骤: 控制器的基类:Method1从common.js获取该方法发送的数据,并将其保存在会话中 commo
- 控制器的基类:Method1从common.js获取该方法发送的数据,并将其保存在会话中
- common JS:to common.JS添加一个方法,该方法接受用户所做的选择,并与控件名称和页面名称一起发送到服务器Method1,以便在会话对象中存储新选择
- 控制器的基类:Method2接受控制器名称、页面名称并检索会话对象
- 单个页面的JS:在onload事件中,指定所有现有过滤器并从Method2获取数据
我不想重新发明轮子。此任务是否已有任何解决方案或模式?或者有什么办法可以做得更好吗?我想到的一种方法是使用Cookies,而不是会话,因为它只是一个部分,您可以从JavaScript本身读取Cookies。它将保存服务器资源,因为您不会在会话中保存任何内容。如果您的选择标准不是很敏感,则不应存在任何安全问题谢谢您的建议!这听起来很合理,但我认为我们将坚持使用会话,因为我们希望稍后将选择数据存储在数据库中,以便用户在另一台机器上打开网站时可以使用他的过滤器。