C# Azure表存储模拟器将SOH字符附加到分区和行键
我刚刚开始在本地机器上使用Azure表存储(通过存储模拟器)。我正在表存储器中存储一些资源键;但是,当我使用分区键、行键或两者查询表(甚至通过SQLServerManagementStudio)时,不会返回任何结果 查询表存储的代码如下:C# Azure表存储模拟器将SOH字符附加到分区和行键,c#,http-status-code-404,emulation,azure-table-storage,C#,Http Status Code 404,Emulation,Azure Table Storage,我刚刚开始在本地机器上使用Azure表存储(通过存储模拟器)。我正在表存储器中存储一些资源键;但是,当我使用分区键、行键或两者查询表(甚至通过SQLServerManagementStudio)时,不会返回任何结果 查询表存储的代码如下: public async Task<TEntity> GetItemAsync(string partitionKey, string rowKey) { var table = client.GetTableReferen
public async Task<TEntity> GetItemAsync(string partitionKey, string rowKey)
{
var table = client.GetTableReference(TableName);
var retrieveOperation = TableOperation.Retrieve<TEntity>(partitionKey, rowKey);
var retrievedResult = await table.ExecuteAsync(retrieveOperation);
if (retrievedResult.Result != null)
{
return (TEntity)retrievedResult.Result;
}
else
{
Trace.TraceWarning("The entity could not be retrieved.");
return null;
}
}
公共异步任务GetItemAsync(string partitionKey,string rowKey)
{
var table=client.GetTableReference(TableName);
var retrieveOperation=TableOperation.Retrieve(partitionKey,rowKey);
var retrievedResult=wait table.ExecuteAsync(retrieveOperation);
if(retrievedResult.Result!=null)
{
return(tenty)retrievedResult.Result;
}
其他的
{
Trace.TraceWarning(“无法检索实体”);
返回null;
}
}
执行查询时,结果包含Http 404
有人知道问题出在哪里吗?如果它与附加的SOH字符有关,为什么Azure表存储会附加该字符
谢谢你的支持
有人知道问题出在哪里吗
据我所知,如果表不存在,通常会发生HTTP404错误。
我建议您首先检查您的表名是否存在
如果它与附加的SOH字符有关,为什么Azure表存储会附加该字符
根据对本文的理解,PartitionKey和RowKey属性的值中不允许使用以下字符:
从U+0000到U+001F的控制字符,包括:
- 水平制表符(\t)字符
- 换行符(\n)字符
- 回车符(\r)字符
- 从U+007F到U+009F的控制字符
- 水平制表符(\t)字符
- 换行符(\n)字符
- 回车符(\r)字符
- 从U+007F到U+009F的控制字符