Ily*_*dik 5 c# http http-status-codes azure azure-table-storage
我对 Azure 表存储运行一个简单的命令:
var operation = TableOperation.InsertOrReplace(entity);
await cloudTable.ExecuteAsync(operation);
Run Code Online (Sandbox Code Playgroud)
现在 ExecuteAsync 返回的结果不仅仅是Task,而是Task<TableResult>。TableResult包含HttpStatusCode. 这是否意味着该操作可以直接执行而不会引发任何异常,并且状态代码将为 500 或其他内容,而我需要自己验证这些内容?或者我只会得到成功代码和异常。
我找不到任何关于该文件的文档,并且很难从表存储中引发错误来弄清楚它是如何工作的。
PS我Microsoft.WindowsAzure.Storage.Table现在使用,但计划切换到新开发的Cosmos for .Net Core库,但它仍然是测试版。
PPS 已经发现它用于例如未找到元素时的 404,这实际上是预期的而不是例外。另外,错误的键也会导致异常,可能是 403 或 401 的结果。目前还不清楚失败是否会导致异常,但所有都指向将抛出异常的方向。
最好使用 Azure.Data.Tables 包,这是用于使用 Azure 表存储的最新且推荐的 nuget 包。 https://www.nuget.org/packages/Azure.Data.Tables/
如果请求失败,所有 Azure SDK都应抛出异常:
当服务方法因非成功状态代码而失败时,请抛出 RequestFailedException 或其子类型。
https://azure.github.io/azure-sdk/dotnet_introduction.html#dotnet-errors
也就是说,仔细检查并没有什么坏处。
| 归档时间: |
|
| 查看次数: |
631 次 |
| 最近记录: |