Поскольку вы используете MVC 5, это может автоматически обрабатываться для JS и CSS, если вы используете связывание и минимизацию.
Запрос ... для пакета ... содержит пару строк запроса .... Строка запроса ... имеет маркер значения, который является уникальным идентификатором, используемым для кэширования.Пока пакет не меняется, приложение ASP.NET будет запрашивать ... пакет, используя этот токен.Если какой-либо файл в пакете изменяется, среда оптимизации ASP.NET сгенерирует новый токен, гарантируя, что запросы браузера для пакета получат последний пакет.
По существу, приложение ASP.NET будетсправиться с кешированием JS и CSS для вас.
Подробнее о том, как это работает и как его реализовать, вы можете прочитать в статье MSDN для Bundling and Minification.
Я не уверен, что вы подразумеваете под кэшированием HTML.Если вы используете файл .cshtml, он не должен кэшироваться по умолчанию, насколько я знаю.Однако вы можете указать в контроллере, как долго следует кэшировать результаты действия, например, в этом сообщении:
. Вы можете использовать OutputCacheAttribute для управления сервером и /или кэширование в браузере для определенных действий или всех действий в контроллере.
Если вы предоставите мои подробные сведения о кэшировании HTML-кода, я мог бы предоставить более полезный ответ.