Я много погружался в внутреннюю функциональность ASP.NET MVC (по разным причинам), но по-прежнему не могу охватить все поведение. Один из тех, что я не сделал, - subj.
Принцип работы:
если я связывает некоторые файлы (например, файлы css), фреймворк обнаруживает эти изменения и генерирует новый id для нового пакета ( чтобы браузеры могли обновлять изменения), например href= "/Content/css? v = qartPE4jGe-l1U0I7kNDZPZzVTdh0kT8VBZZA_uURjI1".
То, что я на самом деле пытаюсь понять:
-
Как именно структура (возможно, не MVC, но .NET) обнаруживает, что файлы изменены (поскольку активных наблюдателей нет (так как я могу изменить файл, даже если веб-сервер, если он отключен), чтобы увидеть изменения файла в реальном времени, а также система обнаруживает фактическое изменение содержимого файла (я пытался просто сохранить файлы без изменения их содержимого, а номер пакета также не изменился))? (Я считаю, что, очевидно, система не может сравнивать все содержимое файла, чтобы обнаружить его изменения в каждом запросе).
-
Где (и как) фреймворки хранят текущий идентификатор пакета и как он хранит предыдущие версии (поскольку предыдущие пакеты все еще доступны, когда идут на их URL-адреса)
Спасибо большое!