Microsoft.Azure.Documents.DocumentClientException:服务器无法解析Url
本文关键字:Url 服务器 Azure Documents DocumentClientException Microsoft | 更新日期: 2023-09-27 18:12:09
我正在使用。net的1.4.1版本的DocumentDB客户端,当我试图更新集合中的文档时,我得到这个错误:
DocumentClientException: Server could not parse the Url.
当我这样做的时候:
await _repository.Client.ReplaceDocumentAsync(DocumentsLink, document);
其中Client是DocumentClient, DocumentsLink是路径dbs/9TBhAA==/colls/9TBhANQ4yAA=/docs/
是这样构造的:
public Uri DocumentsLink
{
get
{
if (string.IsNullOrEmpty(_documentsLink))
{
_documentsLink = _repository.Collection.DocumentsLink;
}
return new Uri(_documentsLink, UriKind.Relative);
}
}
和一个简单的json文档。
此代码在同一数据库的不同集合上运行良好。
如果我使用linq扩展并传递字符串而不是相对URI,我会得到相同的错误。
谁有建议如何解决这个问题?
真奇怪;您确定这对同一数据库中的不同集合有效吗?
ReplaceDocumentAsync()
需要到特定文档的完整路径。路径dbs/9TBhAA==/colls/9TBhANQ4yAA=/docs/
只能解析为一个集合。
你需要添加文档的rid -它看起来像这样:dbs/UtJlAA==/colls/UtJlAKU5IAE=/docs/UtJlAKU5IAELAAAAAAAAAA==/