Управление жизненным циклом SimpleRepository - PullRequest
2 голосов
/ 17 сентября 2009

Я только начинаю с SubSonic 3 и играю с подходом SimpleRepository. Каково предполагаемое время жизни классов SimpleRepository при использовании в настольном приложении?

Ожидаете ли вы, что будете создавать новый экземпляр каждый раз, когда хотите прикоснуться к базе данных? Должен ли я создать экземпляр для использования для каждой группы вызовов базы данных, которые происходят вместе? Должен ли я создать один экземпляр синглтона при запуске программы и использовать его для всего?

Я предполагаю, что это один из вторых двух вариантов, но мне не ясно, будет ли безопасно создать один экземпляр и использовать его для всех вызовов или нет. Я буду использовать контейнер IoC, если это имеет значение.

1 Ответ

3 голосов
/ 19 сентября 2009

Нет ничего плохого в том, чтобы поддерживать работу в течение всего сеанса рабочего стола (обязательно отключите миграцию). Когда я тестировал репо, я все время держал его открытым, и у меня не было проблем с утечками памяти - но обязательно закройте все читатели, если вы их выполните и т. Д.

...