【发布时间】:2019-01-15 10:05:26
【问题描述】:
我有一个Layout 页面,它使用Telerik's ComboBox 设置应用程序中的项目列表,如图所示。 combobox 允许用户选择他/她想要从事的项目。
一旦做出选择,我希望应用程序中的所有后续操作都应与所选项目相对应。我可以在Session 中保留项目信息,但是如果用户选择在新选项卡中打开它并且在第二个选项卡中用户切换到不同的项目并返回第一个选项卡并刷新页面然后会话信息(项目) 会发生变化,这将在我的应用程序中产生问题。
那么,对我来说,保存Layout.cshtml 控件的项目信息的最佳方式是什么,以便我可以在我的应用程序中使用它,以便呈现的每个页面都使用当前/正确选择的值。
Tempdata / QueryStrings 浮现在我的脑海,但我不知道它们是否能合理解决我的问题。如果是,那么我应该如何一般地使用它们(特别是querystrings)而不会使我的解决方案复杂化?
localStroage 和 sessionStorage 似乎也是相关的解决方案,但是在用户从现有页面打开新标签的情况下如何使用它们? Project # 将如何在新打开的页面/窗口/选项卡上持续存在?
【问题讨论】:
标签: asp.net asp.net-mvc layout local-storage persistence