В небольшом демонстрационном приложении, которое я создаю, я поместил код для инициализации базы данных в событии Global.Session_Start (). Однако я заметил, что это событие не срабатывает, когда я запускаю приложение в отладчике на сервере разработки (еще нигде не тестировал).
Вопрос 1: Что дает? Когда Session_Start () действительно вызывается? Я предполагаю, что это когда сеанс начинается, но разве начало каждой новой последовательности запросов не должно вызывать автоматический запуск сеанса? Конечно, сеанс должен начинаться всякий раз, когда я запускаю с F5, так почему бы и нет.
Вопрос 2: Есть ли лучшее место, куда должен идти код для инициализации базы данных? я бы предпочел не помещать его в метод Application_Start, поскольку он не всегда вызывается при отладке.
PS. Под инициализацией базы данных я не имею в виду, что я открываю соединение с SqlServer и оставляю его открытым навсегда. Я использую db4o и открываю предварительно созданный файл базы данных. Как я уже говорил, это просто демонстрационное приложение, меня не беспокоит плохое управление ресурсами или что-то в этом роде.