nHibernate collection lazy = "extra" - почему бы нам не использовать его? - PullRequest
1 голос
/ 21 марта 2012

Мне известен этот ответ , который объясняет, что делает установка lazy = "extra".

Мой вопрос: есть ли какие-либо затраты, связанные с использованием lazy = "extra"?Почему бы просто не установить lazy = "extra" для каждого экземпляра, где в противном случае мы установили бы его "true"?Кажется, это так же, как "правда", но лучше?

1 Ответ

4 голосов
/ 21 марта 2012

Единственное, о чем я могу думать, это то, что если коллекция в основном используется в качестве источника данных или для итерации цикла, было бы лучше получить полную коллекцию при первом обращении к ЛЮБОМУ свойству (даже Count).

В противном случае вы можете выполнить больше запросов, чем необходимо.

Например

bool found = false;
int pos = 0;
while (!found && pos < Collection.Count)
{
    if (MyFunction(Collection[pos]))
    {
         found = true;
    }
    pos++;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...