【发布时间】:2018-01-26 03:31:50
【问题描述】:
我的项目使用 .net core 2.0 MVC,我正在使用 razor,但我需要一些帮助。
我正在尝试替换此代码:
<div class="form-group">
<label asp-for="Address" class="control-label"></label>
<input asp-for="Address" class="form-control" />
<span asp-validation-for="Address" class="text-danger"></span>
</div>
通过一个标签助手,让我可以编写如下内容:
<add-edit-form-group ##Address##></add-edit-form-group>
我已经为文件夹TagHelpers 添加了一个文件,并且使用此代码几乎可以工作,当然我需要一些帮助来将参数传递给标签助手,然后处理删除字符串并添加代码。
帮助代码是:
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Razor.TagHelpers;
using WebApp.Models;
namespace WebApp.TagHelpers
{
public class AddEditFormGroupTagHelper : TagHelper
{
public override void Process(TagHelperContext context, TagHelperOutput output)
{
StringBuilder html = new StringBuilder();
html.Append("<div class=\"form-group\">");
html.Append("<label asp-for=\"Address\" class=\"control-label\"></label>");
html.Append("<input asp-for=\"Address\" class=\"form-control\" />");
html.Append("<span asp-validation-for=\"Address\" class=\"text-danger\"></span>");
html.Append("</div>");
output.Content.SetHtmlContent(html.ToString());
}
}
}
【问题讨论】:
标签: c# asp.net-core asp.net-core-tag-helpers