我已经做了相当多的研究,试图找出这个问题的解决办法,但似乎无法1)重现这个问题,更重要的是2)找到一个最新的解决方案来修复它。
在两周内已经发生了两次,随机地user.config文件将会损坏(例如缺少XML文件的部分),因此导致下一次启动时应用程序崩溃。
Cliffnotes:
我需要一个最新的解决方案来以编程方式处理这个问题(即从CodeProject Handling Of Corrupted User Config或不同的帖子中获取),
我还需要一个可复现的情况,“损坏”user.config文件(除了删除其中的部分内容,因为对我来说没有用)以能够测试上面的#1。
我找到的解决方案:
我知道你可以手动导航到疯狂的路径(.../AppData/..././1.0.0.0/user.config)并将其删除然后重新运行应用程序,但是这对我们来说不是一个合适的解决方案。我们需要能够以编程方式捕获此错误,并相应地处理它。如果可能的话,最好不要重新启动应用程序。
我找到了一些帖子/答案,它们是这篇文章CodeProject Handling Of Corrupted User Config的稍微不同的版本,其中他们使用与该链接相同的机制,或者使用ConfigurationManager命令打开配置文件并捕获异常。
我尝试过的:
我的一个问题是,我似乎无法在C# 4.5.2中访问ConfigurationManager类。但MSDN文档说它在当前框架中可用。因此我不能真正尝试。
当我尝试手动“破坏”我的user.config文件来测试我的解决方案时,它没有出现任何问题,应用程序正常工作...这令人担忧,因为我找不到一个可重复的案例来测试提供的解决方案是否有效(即上面链接中不使用ConfigurationManager的解决方案)
非常感谢您的帮助!