javascript - Windows 8.1 应用程序中应用程序数据和 session 数据之间的差异

标签 javascript windows-store-apps windows-8.1

对于 ASP.NET 页面,术语“应用程序数据”是指所有用户通用的数据,而术语“ session 数据”是指特定于给定用户 session 的数据(并且在日志之间不存在) -ins)。

但是,在讨论 Windows 8 应用生命周期时,定义似乎发生了变化。

对于 Windows 8 应用程序,术语“应用程序数据”似乎是指特定于给定用户的数据(并且在登录之间持续存在),而“ session 数据”似乎是指特定于给定登录的数据 - session 中。

在线 Microsoft 教程(对我来说)对“应用程序数据”和“ session 数据”的分类似乎有点模糊。看来(再次对我来说),“应用程序数据”只是您希望在 session (或挂起终止事件)之间保留的任何数据,而 session 数据只是您不想在 session (或挂起终止事件)之间看到的数据。终止事件)

我的理解正确吗? “应用程序数据”和“ session 数据”的定义仅仅是 session 之间如何存储和检索数据的问题(因此 - 不是真正的数据决策,而是设计决策)?

谢谢。

最佳答案

暂时把术语放在一边,最好只看一下应用程序状态及其要求。

首先,每当应用程序运行时,一些设置和配置都应该始终保留,例如用户设置的帐户、他或她的首选项等等。这些设置将在应用程序启动时加载,例如来自图 block 、通过合约等。通常,只要状态发生变化,就会保存该状态。

其次,如果应用程序被系统挂起然后终止,然后由用户再次切换(平铺或向左滑动等),我们要求应用程序保留其始终在运行且没有运行的感知。没有被关闭。对于这种情况,应用程序需要保存更多临时状态,例如导航堆栈、未提交的表单数据、当前平移位置等,这样,如果在终止后重新启动,它可以重新加载此状态并像之前一样显示。挂起事件是指您确保保存此类状态,尽管通常在其更改时保存它很方便。

所有这些状态都可以归类为“应用程序数据”,但我更喜欢将“应用程序数据”用于第一个(持久)状态,将“ session 数据”或“ session 状态”用于第二个(短暂)状态。我在//build 上发表的名为“国家的故事”的演讲中使用了这些术语(请参阅 here for 2013 talk,这是 2012 年的演讲,略有修改)。

除了正确识别该术语之外,这实际上是为您的应用程序定义有状态体验的问题,然后使用应用程序数据(和/或 WinJS)API 随时保存/加载您需要的任何状态。你怎么调用它是完全无关紧要的,因为它最终都存储在同一个地方。主要区别在于您何时加载或不重新加载它。

关于javascript - Windows 8.1 应用程序中应用程序数据和 session 数据之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19285979/

相关文章:

node.js - 安装 Drywall 时我遇到了 Bcrypt 问题

javascript - 当我执行 loc.innerHTML = xhr.responseText 时,为什么浏览器会自动将我的responseText 用双引号引起来?

javascript - html/CSS代码以最小化网页中的额外空间

javascript - angular js,广播一个事件并等待它完成

xaml - Listview 禁用项目点击

javascript - 使用 Bing map 在智能手机上进行实时跟踪

javascript - 使用 Javascript 将毫秒转换为分钟和秒

c# - 在 Windows 10 UWP 中处理挂起、恢复和激活

visual-studio - 如何将应用程序的平台从 Windows 8.1 更改为 Windows 8?

windows - Visual Studio 2013 : How to send app to second monitor upon finishing build?