[Perf] Reduce DefaultTagHelperContent allocations in LinkTagHelper and ScriptTagHelper
Fixes #4468
This commit is contained in:
parent
fa34f61d46
commit
a565f9ff58
|
|
@ -256,7 +256,9 @@ namespace Microsoft.AspNetCore.Mvc.TagHelpers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var builder = new DefaultTagHelperContent();
|
var builder = output.PostElement;
|
||||||
|
builder.Clear();
|
||||||
|
|
||||||
if (mode == Mode.GlobbedHref || mode == Mode.Fallback && !string.IsNullOrEmpty(HrefInclude))
|
if (mode == Mode.GlobbedHref || mode == Mode.Fallback && !string.IsNullOrEmpty(HrefInclude))
|
||||||
{
|
{
|
||||||
BuildGlobbedLinkTags(output.Attributes, builder);
|
BuildGlobbedLinkTags(output.Attributes, builder);
|
||||||
|
|
@ -278,8 +280,6 @@ namespace Microsoft.AspNetCore.Mvc.TagHelpers
|
||||||
|
|
||||||
BuildFallbackBlock(builder);
|
BuildFallbackBlock(builder);
|
||||||
}
|
}
|
||||||
|
|
||||||
output.PostElement.SetHtmlContent(builder);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void BuildGlobbedLinkTags(TagHelperAttributeList attributes, TagHelperContent builder)
|
private void BuildGlobbedLinkTags(TagHelperAttributeList attributes, TagHelperContent builder)
|
||||||
|
|
|
||||||
|
|
@ -239,7 +239,8 @@ namespace Microsoft.AspNetCore.Mvc.TagHelpers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var builder = new DefaultTagHelperContent();
|
var builder = output.PostElement;
|
||||||
|
builder.Clear();
|
||||||
|
|
||||||
if (mode == Mode.GlobbedSrc || mode == Mode.Fallback && !string.IsNullOrEmpty(SrcInclude))
|
if (mode == Mode.GlobbedSrc || mode == Mode.Fallback && !string.IsNullOrEmpty(SrcInclude))
|
||||||
{
|
{
|
||||||
|
|
@ -262,8 +263,6 @@ namespace Microsoft.AspNetCore.Mvc.TagHelpers
|
||||||
|
|
||||||
BuildFallbackBlock(output.Attributes, builder);
|
BuildFallbackBlock(output.Attributes, builder);
|
||||||
}
|
}
|
||||||
|
|
||||||
output.PostElement.SetHtmlContent(builder);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void BuildGlobbedScriptTags(
|
private void BuildGlobbedScriptTags(
|
||||||
|
|
@ -289,7 +288,7 @@ namespace Microsoft.AspNetCore.Mvc.TagHelpers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void BuildFallbackBlock(TagHelperAttributeList attributes, DefaultTagHelperContent builder)
|
private void BuildFallbackBlock(TagHelperAttributeList attributes, TagHelperContent builder)
|
||||||
{
|
{
|
||||||
EnsureGlobbingUrlBuilder();
|
EnsureGlobbingUrlBuilder();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue