2016-01-25 3 views
0

Я недавно застревать на очень странные и расстраивает проблемы, которая началась, когда я изменил свое ASP.NET приложение из IIS Express в IIS Local.Как мое приложение ASP.NET «знает», когда код изменен?

База данных, используемая для заполнения штрафа, но теперь она выполняется только тогда, когда я вношу изменения в код и запускаю. Не имеет значения что изменений, которые я делаю - я даже могу вставить пробел, и он будет работать после того, как я нажму. Но если я снова запустил , это не сработает. Он работает только при внесении изменений и компиляции.

Из-за того, что я собираю, проблема выглядит как-то связанная с подключением к базе данных, суетливая о кешировании. Но я отключил кэширование как в IIS, так и в web.config, и я все равно получаю такое же поведение.

У кого-нибудь есть теория о том, что происходит? Я думаю, мои основные вопросы таковы:

(1) Как приложение «знает», когда код изменен? Что меняется в отношении состояния программы для создания различного поведения?

(2) Почему переход с IIS Express на IIS Local (тот же IP-адрес используется для извлечения данных) приводит к тому, что это происходит?

(3) Есть ли способ воспроизвести или смоделировать исходное поведение в IIS Local?

+0

Вы используете Entity Framework? – Philo

+0

Нет. Хотя я не уверен, что я понимаю актуальность вопроса ... – JAbraham

+0

Проверьте время истечения срока действия используемого кеша. Вы можете получать устаревшие данные из-за большей продолжительности кеша. ASP.NET может удалить данные из кеша: Поскольку память на сервере низкая, процесс известен как очистка, Поскольку срок действия элемента в кеше истек, или Поскольку изменяется зависимость элемента. https://msdn.microsoft.com/en-us/library/ms178597(v=vs.100).aspx Учитывая ваш сценарий, вы можете попробовать SqlCacheDependency обновлять кеш всякий раз, когда данные обновляются. Вот полезная ссылка: http://www.asp.net/web-forms/overview/data-access/caching-data/using-sql-cache-dependencies-cs – Philo

ответ

0

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

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