- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在 Debug模式和 Release模式下,模拟器和真实设备都会发生这种情况。
在应用程序中,我成功地存储了几个应用程序设置——从简单的值类型到更复杂的对象和对象列表。
使用“WP POWER TOOLS”,我可以在 IsolatedStorage 的根目录中跟踪文件“__ApplicationSettings”。它“填满了”——在第一行中我找到了一些定义复杂类型定义的类和程序集,在 XML 下方以 <ArrayOfKeyValueOfstringanyType...>
开头。所以,到目前为止,一切对我来说都很正常。当我关闭我的应用程序时,最后一段运行代码 是 App.xaml.cs 中的“Application_Closing”-Handler。在这一刻,我可以最后一次检查 ApplicationSettings - 一切正常。例如:我检查条目数:
var count = System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings.Count;
...计数正确,键/值正确。
然后 - 我立即重新启动应用程序(Visual-Studio-Debugging 不会中断)并且 第一段运行代码 是 App 中的 ctor App() .xaml.cs.
在第一行中,我再次检查了 ApplicationSettings-Entries 的计数,并且:它是 0 !!!
但是:WP POWER TOOLS 仍然告诉我,“__ApplicationSettings”-文件存在并且仍然像以前一样填充。(此错误的后果是,第一次尝试再次保存任何设置时,整个 __ApplicationSettings-File 将被覆盖并仅包含一个新设置。)
那么是什么阻止了应用程序“使用”现有的“__ApplicationSettings”-File???
提前致谢!
(PS 1:我已经经历过,当保存设置时发生异常时,所有 ApplicationSettings 都被销毁。我已经调查了所有这些,并且 99.9% 确定,不再有异常。)
(PS 2:澄清一下:事实并非如此,完整的 IsolatedStorage 已经消失了。我还有另一个用于日志记录的文件,我写入了 IsolatedStorage 的根目录。这个文件总是那里。而且 __ApplicationSettings 文件没有被“删除”,看起来,应用程序在启动时没有“读取”它。)
最佳答案
我用我的一个应用程序尝试了重现场景并确认了我的预期,即 IsolatedStorageSettings.ApplicationSettings.Count
在第二次运行该应用程序时进入 App() ctor 时是非零的在同一个模拟器进程中。所以你也有希望达到这个理想状态!
由于您报告 _ApplicationSettings 文件不为空,我猜有 2 种可能性:也许应用程序(或其他进程?)在应用程序的第二次运行尝试打开文件时保持 _ApplicationSettings 文件打开阅读? MSFT 没有记录读取是如何完成的,所以也许文件是用 FileShare.None 或 FileShare.Read 打开的,但其他一些进程仍然打开文件进行写入?我不知道如何在模拟器上测试这个,但在真实设备上你可以尝试这个场景:
在 2) 之后,我相信没有其他进程可以打开该文件,因此该应用程序应该能够不受干扰地读取其内容。但是如果你发现它在3)中仍然是0计数,那么还有另一种可能:
也许重新启动的应用程序在尝试将文件中的设置反序列化到您的数据结构时遇到错误?当应用程序首次运行退出时,该错误可能不会阻止数据被序列化。
要检查这种可能性,首先在“输出”、“调试”窗口中查找错误消息。第二次重新启动应用程序时是否看到任何错误?
如果您没有看到任何有用的错误消息,接下来要尝试的是简化保存为设置的数据结构。尝试减少到只有一个简单类型的设置,例如 int 或 string。查看是否可以正确恢复,然后将更多设置添加回文件,直到找到导致问题的设置。
关于c# - IsolatedStorageSettings.ApplicationSettings 在 App-Restart (WP8) 后被关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20803515/
我的应用程序在开发 PC 上运行良好,但是当我在客户端 PC 上启动它时,出现异常:“配置系统无法初始化”,innerException msg =“无法识别的配置部分 applicationSett
我试图在手机 ApplicationSettings 中保存两个对象列表,但我遇到了一个奇怪的问题(但这可能是我在某处犯了一个愚蠢的错误)。 如果我只保存其中一个列表,它会按预期工作 - 它会保存它,
我正在尝试将此类序列化和反序列化为 Windows Phone ApplicationSettings,但由于某种原因,只有 Items 被保留,而不是 Title 或 LastChanged 属性。
我正在尝试从 app.config 获取我的应用程序中的服务值(value)。我必须将它发送到显示 URL 的应用程序。我在此应用程序中使用的 Web 服务也使用它,因此无法将其移动到 appSett
这个问题在这里已经有了答案: Pros and cons of AppSettings vs applicationSettings (.NET app.config / Web.config) (
我有一个被父(执行)程序集引用的 dll。在父程序集的 app.config 的 ApplicationSettings 部分中,我有一些可以以正常智能感知方式访问的设置(例如 Properties.
我正在使用流畅的 NHibernate。 我有一个包含几个特定键(applicationSettings 和 userSettings)的 app.config 文件。 nhibernate 似乎不喜
我正在阅读有关 applicationSettings 的文章和论坛帖子将近一周了。 在几乎每个线程中,似乎都有人正确地指出,类库在部署时不能有配置文件,并且它们在设计时配置的 application
我有针对多个环境的 web.config 转换。在配置文件中,我有一个 applicationSettings 部分,其中包含多个设置和值对。 我尝试过根据用于匹配名称的语法并更改连接字符串以匹配设置
这个问题在这里已经有了答案: Pros and cons of AppSettings vs applicationSettings (.NET app.config / Web.config) (
我正在使用 .NET 4.0,我想使用 app.config 文件来存储相同的参数设置。我执行以下操作。我使用项目属性中的 Settings 选项卡来创建我的参数。 这会将信息添加到 app.conf
我在 app.config 中存储了我的应用程序配置,通过 Visual Studio 我在项目属性对话框的设置选项卡上创建了一些应用程序 key ,然后我在应用程序级别设置了这个 key (不是在用
在 asp.net web.config 文件中,您可以执行 它将在 local.appSettings.config 中查找对 foo/bar 设置的任何覆盖。 application
我正在编写一个 WP7 (Mango) 应用程序。我将值存储在 WP7isolatedStorageSettings.ApplicationSettings 中,然后调用 IsolatedStorag
是否可以访问 applicationSettings 中的值?部分加载 app.config 文件? 我找到了一个例子 How do I retrieve appSettings ,但我不知道如何访问
我可以强制 dll 重新加载其配置吗? 在我的 VB 库中,我使用此配置: This is an entry 从代码中访问“M
我有一个问题,我对 ApplicationSettings 所做的更改似乎没有在我的 AudioPlayerAgents ApplicationSettings 中更新,这应该是相同的?! 我的程序是
这是一个有趣的奇怪行为(阅读:错误)。我的简单测试应用程序中有以下两种方法: private void Save() { var settings = Isolated
我正在为我们构建的 Web 应用程序创 build 置。不,我有一个配置文件,看起来像这样,其中包含一个“appSettings”部分和一个“applicationSettings”部分:
在 TeamCity 中转换 web.config 文件时出现以下错误。它发生在元素上, . No element in the source document matches '/configura
我是一名优秀的程序员,十分优秀!