From 56f74d4760b7f876ba18a6419e75b648a8e017ba Mon Sep 17 00:00:00 2001 From: Hamid Reza Mohammadi Date: Fri, 4 Sep 2026 14:29:11 +0330 Subject: [PATCH] caching fixes --- RMuseum/Controllers/ArtifactController.cs | 12 ++++++++++++ RMuseum/Controllers/RecitationController.cs | 3 +++ 2 files changed, 15 insertions(+) diff --git a/RMuseum/Controllers/ArtifactController.cs b/RMuseum/Controllers/ArtifactController.cs index 088249c0..f68f72b5 100644 --- a/RMuseum/Controllers/ArtifactController.cs +++ b/RMuseum/Controllers/ArtifactController.cs @@ -52,6 +52,7 @@ namespace RMuseum.Controllers return NotFound(); Response.GetTypedHeaders().LastModified = itemInfo.Result.Item.LastModified; + Response.Headers.CacheControl = "public,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -92,6 +93,7 @@ namespace RMuseum.Controllers { DateTime lastModification = itemsInfo.Result.Items.Max(i => i.LastModified); Response.GetTypedHeaders().LastModified = lastModification; + Response.Headers.CacheControl = "public,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -184,6 +186,7 @@ namespace RMuseum.Controllers { DateTime lastModification = itemsInfo.Result.Items.Max(i => i.LastModified); Response.GetTypedHeaders().LastModified = lastModification; + Response.Headers.CacheControl = "private,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -215,6 +218,7 @@ namespace RMuseum.Controllers { DateTime lastModification = itemsInfo.Result.Max(i => i.LastModified); Response.GetTypedHeaders().LastModified = lastModification; + Response.Headers.CacheControl = "public,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -256,6 +260,7 @@ namespace RMuseum.Controllers Response.GetTypedHeaders().LastModified = itemInfo.Result.LastModified; + Response.Headers.CacheControl = "public,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -296,6 +301,7 @@ namespace RMuseum.Controllers Response.GetTypedHeaders().LastModified = itemInfo.Result.LastModified; + Response.Headers.CacheControl = "public,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -397,6 +403,7 @@ namespace RMuseum.Controllers } Response.GetTypedHeaders().LastModified = itemInfo.Result.LastModified; + Response.Headers.CacheControl = "public,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -458,6 +465,7 @@ namespace RMuseum.Controllers return NotFound(); Response.GetTypedHeaders().LastModified = itemInfo.Result.LastModified; + Response.Headers.CacheControl = "private,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -521,6 +529,7 @@ namespace RMuseum.Controllers return NotFound(); Response.GetTypedHeaders().LastModified = itemInfo.Result.LastModified; + Response.Headers.CacheControl = "private,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -584,6 +593,7 @@ namespace RMuseum.Controllers return NotFound(); Response.GetTypedHeaders().LastModified = itemInfo.Result.LastModified; + Response.Headers.CacheControl = "private,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -714,6 +724,7 @@ namespace RMuseum.Controllers DateTime lastModification = lastModified.Result; Response.GetTypedHeaders().LastModified = lastModification; + Response.Headers.CacheControl = "public,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -1151,6 +1162,7 @@ namespace RMuseum.Controllers return NotFound(); Response.GetTypedHeaders().LastModified = itemInfo.Result.Item.LastModified; + Response.Headers.CacheControl = "private,max-age=300"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && diff --git a/RMuseum/Controllers/RecitationController.cs b/RMuseum/Controllers/RecitationController.cs index f22acfac..afa2ef97 100644 --- a/RMuseum/Controllers/RecitationController.cs +++ b/RMuseum/Controllers/RecitationController.cs @@ -180,6 +180,7 @@ namespace RMuseum.Controllers return NotFound(); Response.GetTypedHeaders().LastModified = narration.Result.UploadDate;//TODO: Add a FileLastUpdated field to narrations to indicate the last time the mp3/xml files have been updated + Response.Headers.CacheControl = "public,max-age=86400"; var requestHeaders = Request.GetTypedHeaders(); @@ -222,6 +223,7 @@ namespace RMuseum.Controllers return NotFound(); Response.GetTypedHeaders().LastModified = narration.Result.UploadDate;//TODO: Add a FileLastUpdated field to narrations to indicate the last time the mp3/xml files have been updated + Response.Headers.CacheControl = "public,max-age=86400"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue && @@ -258,6 +260,7 @@ namespace RMuseum.Controllers return NotFound(); Response.GetTypedHeaders().LastModified = narration.Result.UploadDate;//TODO: Add a FileLastUpdated field to narrations to indicate the last time the mp3/xml files have been updated + Response.Headers.CacheControl = "public,max-age=86400"; var requestHeaders = Request.GetTypedHeaders(); if (requestHeaders.IfModifiedSince.HasValue &&