Это полностью зависит от того, что вы делаете с переменной bizItems
, потому что после запуска только этого кода будет выполняться только запрос COUNT(*)
. Это связано с тем, что item
содержит IQueryable
, который представляет собой описание запроса (намерение выполнить), а не результат операции. Запрос будет запущен, только когда вы начнете повторять этот запрос, используя foreach
или оператор, такой как .Count()
. Помимо этого, свойства BusinessProfile
и Products
, вероятно, также будут содержать IQueryable
s.
Итак, давайте посмотрим, что вы можете сделать с этим кодом:
foreach (var item in bizItems.items)
{
Console.WriteLine(item.BusinessLocation.City);
foreach (var profile in item.BusinessProfile)
{
Console.WriteLine(profile.Name);
}
foreach (var product in item.Products)
{
Console.WriteLine(product.Price);
}
Console.WriteLine(item.Count);
Console.WriteLine();
}
Итак, если вы спросите меня снова, глядя на этот код, сколько запросов будет отправлено в базу данных, мой ответ: 2 + 2 * количество элементов в bizItems.items
. Таким образом, количество запросов будет между 2 и (2 + 2 * pageSize).