gpt4 book ai didi

.net - 当数据库离线时,您如何管理您的应用程序?

转载 作者:行者123 更新时间:2023-12-02 01:39:04 26 4
gpt4 key购买 nike

采用 .Net Winforms 应用程序...混合在不稳定的无线网络连接中,与一些喜欢偶尔拔出蓝色插头的用户搅拌,为了更好的措施,添加一个决定重新启动 SQL 服务器的系统管理员时不时地在没有警告的情况下进行盒子只是为了让每个人保持警惕。

处理此类场景的建议和策略是什么:

  • 错误处理 - 例如,您是否将每个使用 Try/Catch 调用服务器或者你依赖某种形式的管理通用错误处理这?如果是的话,它是什么样子的?

  • 应用程序管理 - 例如,您 禁用该应用程序并不允许用户 与其互动,直到 再次检测到连接?你会做什么?

最佳答案

答案取决于您的应用程序类型。有些应用程序可以离线工作 - 例如 Microsoft Outlook。此类应用程序不会将连接异常视为关键,它们可以在本地保存您的工作并在以后进行同步。其他应用程序(例如在线游戏)会将通信问题视为严重异常,如果连接丢失将退出。

至于错误处理,我认为您应该控制所有层上的异常,而不是依赖于一些通用的异常处理代码。您的业​​务层应该了解下层(在我们的例子中为数据访问层)发生了什么并做出相应的响应。在我看来,连接丢失不应被视为意外异常。对于异常管理的良好实践,我建议查看 Exception Handling Application Block .

关于应用程序行为,您应该回答以下问题“我的应用程序在断开连接状态下对客户有商业值(value)吗?”在许多情况下,最终用户能够在断开连接的状态下继续工作将是有益的。然而,这种行为非常难以实现。

专门针对您的场景 Microsoft 开发了 Disconnected Service Agent Application Block

关于.net - 当数据库离线时,您如何管理您的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49426/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com