如何获取collectionLink天蓝色cosmodb

时间:2018-09-28 11:09:18

标签: azure azure-sql-database azure-cosmosdb

collectionLink是什么,如何获取它,在哪里..如何获取collectionLink?它在哪里....它的要求..有人帮助我,我是它的require(collectionLink,Query);`

public IEnumerable<dynamic> GetJoin()
        {

            DocumentClient client;

            client = new DocumentClient(new Uri(appVars.Endpoint), appVars.Key);
            string Query = "SELECT f.id AS familyName f.DisplayName AS childGivenName, c.EntityTypeName AS childFirstName "+
                "FROM EntiyMaster f JOIN c IN f.EntityType ";
            IEnumerable<dynamic>dataour = client.CreateDocumentQuery<dynamic>(collectionLink, Query);
            return dataour;
        }

2 个答案:

答案 0 :(得分:2)

Microsoft.Azure.Documents.Client.UriFactory类是您使用这些标识符的朋友。

Microsoft.Azure.Documents.Client.UriFactory.CreateCollectionUri(databaseId, collectionId);

只要有ID,它还允许您为数据库和单个文档生成链接。

答案 1 :(得分:2)

collectionLink是您正在操作的Collection资源的链接。

collectionLinks有两种类型(或与此相关的任何资源链接)。

  • SelfLink,这是一个使用资源ID指向资源的链接,它看起来像这样:dbs/7tNCAA==/colls/7tNCAMHd0xU=/
  • AltLink,这是一个使用id属性ID指向资源的链接,它看起来像这样:dbs/databaseId/colls/collectionId/

这两个链接均指向资源,在本例中为资源。

但是,如果您拥有id属性,则可以自己生成AltLink。

Microsoft.Azure.Documents.Client.UriFactory是CosmosDB SDK中的一个类,可以生成这些AltLink。

您可以使用以下行来生成文档集合的AltLink:

UriFactory.CreateDocumentCollectionUri(databaseId, collectionId);

在另一个答案上建议的UriFactory.CreateCollectionUri(databaseId, collectionId);可以使用,但不要使用,因为它已过时,将被删除。