2012-06-06 3 views
0

Я только что создал работу cron, как работу с использованием Quartz.net. Для теста он выполняет простой запрос к базе данных. Он просто добавляет поле.
У меня есть DbContext:
DbContext ASP.Net и Quartz.net

частный TotoContext дб = новая TotoContext();

В моей работе я имею:

вар Totos = от и в db.totos где u.name == имя выбрать и;
Toto [] totoArray = totos.ToArray();

В моем web.config у меня есть специальное поле с моей конкретной соединительной строкой и т. Д. («TotoContext»).
Но когда я создаю новый dbContext, кажется, что он использует не использует хорошую connectionString. В часах соединениеString не связано с «TotoContext».
инициализирует свою работу в:

общественного переопределение BOOL OnStart()

И у меня есть конкретный файл Web.toto.config с ConnectionString для сборки.

Почему он не использует хорошее соединениеString?!

Большое спасибо!

Редактировать: Если я установил вручную connectionString в моей db.Database.Connection.ConnectionString, он работает. Но почему он не использует web.config ConnectionString.

ответ

1

Если вы используете полный режим IIS (настройка по умолчанию для роли в сети), web.config будет игнорироваться в точке ввода роли. Поэтому рекомендуется поместить все задачи инициализации ASP.NET в метод Application_Start Global.asax. Точка входа роли используется для выполнения чего-либо перед запуском приложения ASP.NET, например, для изменения конфигурации IIS. Внутри Global.asax соблюдается web.config (и преобразование конфигурации).

0

Я только что узнал, почему он не использует Web.config: https://stackoverflow.com/a/10153375/1396323
Но следующий вопрос, как хранить различную ConnectionString в зависимости от сборки конфигурации (Debug, Release и т.д ...) и где?

Смежные вопросы