抛出StorageException时获取实体详细信息

时间:2017-06-21 15:37:35

标签: azure azure-storage azure-storage-blobs azure-table-storage

当对表和blob进行操作并出现问题时,Azure会抛出StorageException.RequestInformation.ExtendedErrorInformation会向您提供有关出错的信息,例如在尝试将重复的密钥插入表格时:

The specified entity already exists

有没有办法获取有关哪个实体导致异常的信息?

1 个答案:

答案 0 :(得分:0)

目前,如果我们执行批量插入,似乎没有办法让哪个细节实体获得异常。

如果我们有任何想法,我们可以像您一样向Azure团队提供反馈。

我还提到我们可以使用 TableOperation.InsertOrMerge(ITableEntity)来避免冲突。

另一种解决方法是,如果逐个实体插入是可接受的,那么我们可以使用变量来记录当前的插入实体信息。如果有异常,那么我们可以自己记录详细信息。以下是代码段演示代码:

var customEnity = new CustomEntity();
try
{
   foreach (var entity in list)
   {
       TableOperation insertOperation = TableOperation.Insert(entity);

        customEnity = entity;

       // Execute the insert operation.
       table.Execute(insertOperation);        
   }

 }
 catch (Exception)
 {

    //Do something
 }