我有一个Azure表,它的分区键为"myPartition","行键"包含一个电子邮件地址。
我正在使用 Azure 逻辑应用监视共享邮箱中的订阅邮件,然后将其添加到此表中。这工作正常。
但是,当我收到取消订阅消息,并且逻辑应用尝试使用分区键和行键删除实体时,我收到 404 错误 ResourceNotFound。
我可以看到我尝试删除的行存在,使用 Azure 存储资源管理器。
我怀疑问题可能是由行键中电子邮件地址中的@字符引起的,因为我发现文章表明某些字符在行键中无效 - 尽管它们都没有提到@字符。
任何人都可以提供任何想法来解决这个问题吗?
@
字符不应该是问题:
字段中
不允许使用字符 分区键和行键属性的值中不允许使用以下字符:
- 正斜杠 (/) 字符
- 反斜杠 (\) 字符
- 数字符号 (#) 字符
- 问号 (?) 字符
- 控制从 U+0000 到 U+001F 的字符,包括:
- 水平制表符 (\t) 字符
- 换行符 () 字符
- 回车符 (\r) 字符
- 控制从 U+007F 到 U+009F 的字符
和
主键的第二部分是行键,由 RowKey 属性指定。行键是给定分区中实体的唯一标识符。分区键和行键一起唯一标识表中的每个实体。
行键是一个字符串值,最大可达 1 KB。
必须在每个插入、更新和删除操作中包括 RowKey 属性。
摘自了解表服务数据模型。
你绝对确定字符串完全相同吗?没有空格或大小写差异?