Azure SaveChanges 与 SaveChangesWithRetries

标签 azure azure-storage azure-table-storage

查看人们编写的示例,我发现很多人使用 SaveChanges 而不是使用 SaveChangesWithRetries。我认为 SaveChangesWithRetries 是最好的选择,那么仅使用 SaveChanges 有什么优势吗?另外,如果我执行 SaveChangesWithRetries,是否还需要配置其他任何内容,或者我应该使用默认值?

_LogEntryServiceContext.MergeOption = MergeOption.PreserveChanges; _LogEntryServiceContext.AttachTo("LogEntry", itemToDelete, "*"); _LogEntryServiceContext.DeleteObject(itemToDelete); _LogEntryServiceContext.SaveChanges(); _LogEntryServiceContext.Detach(itemToDelete);

谢谢

真理子

最佳答案

一般来说,我总是使用 SaveChangesWithRetries - 但我仍然需要添加自己的错误处理。

无论您选择哪种方法,这两种方法都需要您处理非常罕见的问题:

  • 如果您要保存多项更改,那么您需要制定一个策略,以应对一半更改失败的情况
  • 在极少数情况下,保存可能会因连接/可用性问题而失败
  • 在极少数情况下,由于连接问题,保存可能会失败,但实际上可能已成功 - 在这种情况下,重试似乎会失败。

好消息是(根据我的经验)失败很少见。然而,这对于“事务关键”类型数据来说可不是什么好消息!

关于Azure SaveChanges 与 SaveChangesWithRetries,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5360371/

相关文章:

java - 如何修复从 REST 客户端使用 AZURE 表存储服务时指定的资源不存在错误

azure - microsoft azure 表身份验证 stringtosign 错误

Azure表查询部分分区键guid匹配

Azure RM VM 硬盘

c# - Azure Blob 上传时返回 403

创建 Azure 存储帐户时没有 "blob.core.windows.net"端点

azure - 通过分区和行键对列表查询Azure表存储

azure - 使用数据工厂复制文件时如何保留 Blob 存储中的文件夹结构

.net - 使用 .NET SDK 12 从 Azure Blob 存储中的特定目录/文件夹获取文件

amazon-web-services - k8s从集群获取资源花费太多时间