diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpTagHelperResourceService.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpTagHelperResourceService.cs index 2971716b90..048da5e8df 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpTagHelperResourceService.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Bundling/TagHelpers/AbpTagHelperResourceService.cs @@ -73,7 +73,10 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers throw new AbpException($"Could not find the bundle file '{bundleFile}' from {nameof(IWebContentFileProvider)}"); } - AddHtmlTag(viewContext, context, output, bundleFile + "?_v=" + file.LastModified.UtcTicks); + if (file.Length > 0) + { + AddHtmlTag(viewContext, context, output, bundleFile + "?_v=" + file.LastModified.UtcTicks); + } } stopwatch.Stop(); diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Resources/IWebRequestResources.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Resources/IWebRequestResources.cs index f18a759b21..a1a03a42cf 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Resources/IWebRequestResources.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Resources/IWebRequestResources.cs @@ -4,6 +4,6 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Resources { public interface IWebRequestResources { - List TryAdd(IEnumerable resources); + List TryAdd(List resources); } } diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Resources/WebRequestResources.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Resources/WebRequestResources.cs index 8865095bc4..68bc42d6ad 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Resources/WebRequestResources.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bundling/Volo/Abp/AspNetCore/Mvc/UI/Resources/WebRequestResources.cs @@ -1,23 +1,35 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.AspNetCore.Http; using Volo.Abp.DependencyInjection; namespace Volo.Abp.AspNetCore.Mvc.UI.Resources { public class WebRequestResources : IWebRequestResources, IScopedDependency { - protected List Resources { get; } + protected Dictionary> Resources { get; } - public WebRequestResources() + protected IHttpContextAccessor HttpContextAccessor{ get; } + + public WebRequestResources(IHttpContextAccessor httpContextAccessor) { - Resources = new List(); + HttpContextAccessor = httpContextAccessor; + Resources = new Dictionary>(); } - public List TryAdd(IEnumerable resources) + public List TryAdd(List resources) { - var resourceToBeAdded = resources.Except(Resources).ToList(); - Resources.AddRange(resourceToBeAdded); - return resourceToBeAdded; + var path = HttpContextAccessor.HttpContext?.Request?.Path ?? ""; + + if (Resources.TryGetValue(path, out var res)) + { + var resourceToBeAdded = resources.Except(res).ToList(); + res.AddRange(resourceToBeAdded); + return resourceToBeAdded; + } + + Resources.Add(path, resources); + return resources; } } -} \ No newline at end of file +}