В чем разница между предоставлением ключа раздела в .net core sdk FeedOptions и его использованием в качестве критерия в запросе?Например, если вы хотите перечислить все элементы в данном ключе раздела.Нужно ли указывать параметры подачи или ключ раздела в критериях?
Ключ раздела в критериях
SELECT * FROM c where c.PartitionKey = "some partition key"
.net core с параметрами подачи
var allDocs = await (from d in client.CreateDocumentQuery<Document>(UriFactory.CreateDocumentCollectionUri(databaseId, "TestCollection"),
new FeedOptions { PartitionKey = new PartitionKey("some partition key") })
select d)
.AsDocumentQuery<Document>().ExecuteNextAsync<Document>();
Вопрос возник, когдаЯ создал собственную политику индексации, в которой ключ раздела исключен из индексации.Следовательно, при поиске стоимости RU / s он, по-видимому, выполняет сканирование при исключении вместо поиска по индексу при использовании политики индексирования по умолчанию.
Означает ли это, что если вам нужны перекрестные запросы, вам нужно проиндексироватьключ раздела, и если вам нужно только выполнить запрос в рамках заданных ключей раздела, вы можете исключить его - если вы дадите ключ раздела в FeedOptions?