Azure Table Storage .NET 客户端使用 SDK 1.8 进行了全面重新设计。使用新的 SDK,我如何检查一行是否存在?
以下是SDK 文档中有关如何检索单个项目的示例:
TableResult retrievedResult = table.Execute(retrieveOperation);
// Print the phone number of the result.
if (retrievedResult.Result != null)
Console.WriteLine(((CustomerEntity)retrievedResult.Result).PhoneNumber);
else
Console.WriteLine("The phone number could not be retrieved.");
根据示例,如果未找到任何行,retrieveedResult.Result 应该为 null。但实际上情况并非如此,因为 table.Execute 如果没有找到任何行就会抛出异常。
旧 SDK 也是如此:如果未找到行,则会引发异常。但是有一个属性将其关闭:
TableServiceContext.IgnoreResourceNotFoundException = true
但是这个选项隐藏在新 SDK 的什么地方呢?