"LazzyLoad" по-индусски.
От: Tolym  
Дата: 02.02.11 12:22
Оценка: :)
Наткнулся на этот код по работе... Вроде и не индусы, а замутили мощно .

public class SomeClass
{
private List<SomeItem> _Items; // Список вещей
public List<SomeItem> Items
{
get { return ListHelper.get<List<Items>>(_Items); }
set { _Items = value; }
}
}

static class ListHelper
{
public static TType get<TType>(TType obj)
where TType : class, new()
{
return obj == default(TType) ? new TType() : obj;
}
}
Re: "LazzyLoad" по-индусски.
От: Spiceman  
Дата: 02.02.11 20:59
Оценка:
Здравствуйте, Tolym, Вы писали:

T>Наткнулся на этот код по работе... Вроде и не индусы, а замутили мощно .


Тьфу, только время потерял, пытаясь найти лопату в коде. Работает — не трожь. А так и я могу выложить свой когда-то написанный код, будет не менее мощно.
Как-то заглянул в свой курсач ничего не понял, закрыл нафиг.
Re[2]: "LazzyLoad" по-индусски.
От: Hunta Украина http://dr-leafsey.livejournal.com
Дата: 03.02.11 11:54
Оценка:
Здравствуйте, Spiceman, Вы писали:

S>Тьфу, только время потерял, пытаясь найти лопату в коде. Работает — не трожь. А так и я могу выложить свой когда-то написанный код, будет не менее мощно.

S>Как-то заглянул в свой курсач ничего не понял, закрыл нафиг.

Не работает. По крайней мере не работает как LazyLoad. Каждый раз возвращается новый массив, _Items не инициализируется.
Но не смешно.
Поступай так, чтобы максима своей воли в любое время могла стать принципом всеобщего законодательства.
Re[3]: "LazzyLoad" по-индусски.
От: Spiceman  
Дата: 03.02.11 16:04
Оценка:
Здравствуйте, Hunta, Вы писали:

H>Не работает. По крайней мере не работает как LazyLoad. Каждый раз возвращается новый массив, _Items не инициализируется.

Ну как бы в коде явно нигде и не указано, что это LazyLoad. Новый массив возвращается каждый раз до тех пор, пока свойству явно не присвоят значение. Тогда будет возвращаться присвоенное значение. Может так и задумывалось?

H>Но не смешно.

Ага.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.