Windows Phone 7.1应用程序中的自动登录过程

在我的Windows Phone应用程序( silverlight应用程序 )中,我希望用户在成功登录后自动登录到应用程序。 即我不希望用户每次都登录。

我通过Isolated Storage文件概念实现了这一点。 即我首先创建了一个目录,然后创建了一个独立的存储文件流 ,并将电子邮件和密码凭据存储在某个文件中。
当我停止调试并重新启动时,我的流阅读器会成功读取该文件中的电子邮件密码凭据

我的问题是当我关闭我的模拟器并将其打开时,我无法从该文件中读取。(特别是,目录本身不存在!)。我还想知道我的独立存储在真正的Windows手机中存在吗?

我怎么能解决这个问题?

这是设计的。

关闭它后,仿真器中的独立存储不会保留。

参考: Windows Phone模拟器向下滚动到“function”:

Important Note:
Isolated storage is available while the emulator is running. Data in isolated storage does not persist after the emulator closes. This includes files stored in a local database, as these files reside in isolated storage.

这是使用模拟器的一个缺点 – 它在真正的手机上不是问题。

请参阅http://msdn.microsoft.com/en-us/library/ff402563%28v=vs.92%29.aspx

重要说明:仿真器运行时可以使用独立存储。 仿真器关闭后,隔离存储中的数据不会保留。 这包括存储在本地数据库中的文件,因为这些文件驻留在独立存储中。

你无能为力。 当您关闭并重新打开模拟器时,您将从“设备”中擦除所有数据(应用程序,隔离的存储内容,批次),然后从已知状态重新开始。 其中一个原因是允许开发人员进入设备的“已知良好”状态,以便每次重新启动时都可以在模拟器上从头开始测试。

如果要在启动应用程序之间保留数据,则唯一的选择是不在运行之间关闭模拟器。

您还可以使用IsolatedStorageSettings.ApplicationSettings来存储用户的凭据,而不必编写文件:
http://msdn.microsoft.com/en-us/library/system.io.isolatedstorage.isolatedstoragesettings.applicationsettings%28v=vs.95%29.aspx

正如其他人所说,在模拟器中,这些设置仅在模拟器本身运行时持续存在。 请注意,您不必在每个调试会话之间关闭模拟器。 您可以按模拟器上的主页按钮来测试移入和移出应用程序。

您可以使用Isolated Storage Explorer工具拍摄应用程序隔离存储的快照(例如,其中包含一些默认数据),然后在重新启动模拟器后使用该快照来反转隔离的存储内容。

您可以在msdn上找到有关ISETool和一些“如何”的更多信息:如何:使用Isolated Storage Explorer Tool文章 。