Я пытаюсь создать выражение LINQ для выборки данных из моего контейнера cosmosdb с помощью CosmosClient SDK. Это выглядит примерно так:
p => (p.HairState.Density == hairState.Density
|| p.HairState.Density == nextClosestHairState.Density) &&
(p.HairState.Porosity == hairState.Porosity
|| p.HairState.Porosity == nextClosestHairState.Porosity) &&
(p.HairState.Texture == hairState.Texture
|| p.HairState.Texture == nextClosestHairState.Texture) &&
(p.HairState.Thickness == hairState.Thickness
|| p.HairState.Thickness == nextClosestHairState.Thickness);
Это не работает должным образом. С другой стороны, это:
p => (p.HairState.Density == hairState.Density) &&
(p.HairState.Porosity == hairState.Porosity) &&
(p.HairState.Texture == hairState.Texture) &&
(p.HairState.Thickness == hairState.Thickness);
работает должным образом. Я новичок в использовании LINQ для запросов к базе данных, поэтому мне интересно, не поддерживает ли LINQ такое и / или вложение.
Кроме того, есть ли способ сгенерировать эквивалентный запрос sql, поэтому я можно увидеть, что именно происходит? Спасибо!