1
我在写一个方法从Azure表存储服务中检索实体。我需要以类型User而不是TableResult的形式返回实体。以下编译,但总是返回空值:强制Azure表存储TableResult到类
var partitionKey = "user";
var retrieveOperation = TableOperation.Retrieve<TableEntity>(partitionKey, userName);
var result = _table.Execute(retrieveOperation);
if (result == null)
{
return null;
}
return result.Result as User;
我假设这是因为从TableResult转换到用户由于某种原因无法正常工作。将其转换为(User)result.Result在运行时会动态引发错误。我在一个实体列表中看到了一个使用Linq的例子,但你如何得到一个单一的结果呢?
谢谢Thomas!那是失踪的关键。我完全忽略了这部分代码。我实际上使用Rory Primrose的EntityAdapter,所以我需要指定作为返回类型,但是这个技巧。见http://www.neovolve.com/2013/11/18/entity-adapter-for-azure-table-storage/。 –
@AndrewBSchultz,你甚至不需要使用这个类,有一个'DynamicTableEntity'类:https://msdn.microsoft.com/library/azure/microsoft.windowsazure.storage.table.dynamictableentity.aspx。 – Thomas