Azure Cosmos DB创建数据库报错:远程名称无法解析,端点与密钥使用是否有误?
问题
我正尝试搭建一个可用的基础Azure Cosmos Database工作流。从Azure账户的「设置」中「连接字符串」的HOST参数获取endpoint地址,从PRIMARY PASSWORD参数获取key,代码如下:
string EndpointUri = "https://<my-database-name>.mongo.cosmos.azure.com"; string PrimaryKey ="<my-key>";
随后我按照微软官方文档创建客户端:
CosmosClient cosmosClient = new( uri, key, new CosmosClientOptions(){ ApplicationRegion = Regions.WestUS } ); database = cosmosClient.CreateDatabaseIfNotExistsAsync(id: databaseId).Result;
但持续报错:
The remote name could not be resolved
请问我是否错误使用了Endpoint和Key?
排查方向
- Endpoint与客户端不匹配:你用的是MongoDB API格式的Endpoint(
.mongo.cosmos.azure.com),但代码调用的是SQL API的CosmosClient。如果你的Cosmos DB是MongoDB API类型,需用对应MongoDB驱动而非SQL API客户端;若用SQL API,Endpoint格式应为https://<account-name>.documents.azure.com:443/,需确认账户类型后匹配正确的Endpoint和客户端。 - 变量名不匹配:代码定义的变量是
EndpointUri和PrimaryKey,但创建客户端时传入的是uri和key,若未正确赋值这两个变量,会导致传递错误地址/密钥,引发域名解析失败。 - 占位符未替换:确认
<my-database-name>已替换为实际的Cosmos DB账户名称,不要保留占位符。 - 网络限制:若以上均无问题,检查运行代码的环境是否存在防火墙、代理等限制,阻止了Azure Cosmos DB域名的解析或网络连接。
内容的提问来源于stack exchange,提问作者Yafim Simanovsky
相关产品推荐
相关产品推荐

