gpt4 book ai didi

c# - 在这种情况下如何使用异常?

转载 作者:行者123 更新时间:2023-11-30 18:44:34 26 4
gpt4 key购买 nike

我有一个处理一组记录的方法。这个方法,处理后返回 true\false。所以,如果所有记录都被处理(做一些数据库更新),将返回 true。现在,假设处理完 1 条记录,抛出一些异常,我应该在 catch block 中写 result=false(在方法结束时返回结果)吗?并且,允许处理其他记录?

最佳答案

在添加一条记录失败的情况下继续往dbase中添加数据几乎总是错误的。记录经常相关。它们代表银行账户上的一组交易。或者来自客户的一批订单。添加这些但缺少其中之一总是一个问题。

您不仅给您的客户带来了一个巨大的问题,因为他们提出了一个包含单个更正记录的新批处理,而且让其他人忽略错误变得太容易了。这种错误直到很久以后才被发现或导致问题。总是伴随着与纠正错误相关的巨大成本。

发生错误时,拒绝整批。通过使用事务使数据库保持在适当的状态。例如,使用 SqlTransaction 并在开始时调用 BeginTransaction()。当一切正常时调用 Commit(),在你的 catch 子句中调用 Rollback()。

您的客户端现在可以返回生成记录的子系统,进行更正并重新运行您的程序。您的数据库将始终包含该子系统数据的正确副本。错误不容忽视。

关于c# - 在这种情况下如何使用异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2628906/

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