From a619ff9fe1980b97901bf0a9bc65ea7f2d10be8f Mon Sep 17 00:00:00 2001 From: Tobias Klika Date: Fri, 7 Jul 2023 14:39:02 +0200 Subject: [PATCH] append file version to svg icon path --- zero/TagHelpers/IconTagHelper.cs | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/zero/TagHelpers/IconTagHelper.cs b/zero/TagHelpers/IconTagHelper.cs index b5ad1d44..4f070f88 100644 --- a/zero/TagHelpers/IconTagHelper.cs +++ b/zero/TagHelpers/IconTagHelper.cs @@ -1,4 +1,6 @@ -using Microsoft.AspNetCore.Razor.TagHelpers; +using Microsoft.AspNetCore.Mvc.Rendering; +using Microsoft.AspNetCore.Mvc.ViewFeatures; +using Microsoft.AspNetCore.Razor.TagHelpers; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; @@ -15,17 +17,24 @@ public class IconTagHelper : TagHelper public string Class { get; set; } + [HtmlAttributeNotBound] + [ViewContext] + public ViewContext ViewContext { get; set; } = default!; + private IconOptions _options; + private IFileVersionProvider _fileVersionProvider; + private readonly ILogger _logger; - public IconTagHelper(IOptionsMonitor options, ILogger logger) + public IconTagHelper(IOptionsMonitor options, ILogger logger, IFileVersionProvider versionProvider) { _options = options.CurrentValue; _logger = logger; - + _fileVersionProvider = versionProvider; + options.OnChange(val => _options = val); } @@ -55,7 +64,8 @@ public class IconTagHelper : TagHelper public string BuildIcon(string symbol, int size = 18, string stroke = "2", string classes = null, bool withSvg = false) { - string inner = $""; + string path = _fileVersionProvider.AddFileVersionToPath(ViewContext.HttpContext.Request.PathBase, _options.Path); + string inner = $""; if (!withSvg) {