TagBuilder
здесь, чтобы помочь вам построить элемент HTML немного легко без объединения строк. Если вы понимаете, что вы создаете элемент с нуля. Это означает, что если вы не объедините атрибут с именем «background-color» в компоновщик тегов, у него не будет атрибута с именем «background-color».
Следующий код должен также установить атрибут "background-color":
using Microsoft.AspNetCore.Mvc.Rendering;
using Microsoft.AspNetCore.Razor.TagHelpers;
namespace DL.SO.Framework.Mvc.TagHelpers
{
public class TestTagHelper : TagHelper
{
public override void Process(TagHelperContext context, TagHelperOutput output)
{
int carouselWidth = 300;
TagBuilder div = new TagBuilder("div");
div.MergeAttribute(
"style",
$"width: { carouselWidth }px; height: { carouselWidth }px; background-color: green;");
output.Content.SetHtmlContent(div);
}
}
}
Поскольку ваш пост неясен, исходя из вашего «кода», я думаю, вам также следует установить атрибут class
, чтобы можно было применить ваш стиль.
int carouselWidth = 300;
TagBuilder div = new TagBuilder("div");
div.MergeAttribute(
"style",
$"width: { carouselWidth }px; height: { carouselWidth }px;");
div.MergeAttribute(
"class",
"test");