• MVC6 (ASP.NET5) 自定义TagHelper


    1) 在 _ViewImports.cshtml 中引入TagHelper类所在的 Assembly . (注意不是namespace)  :

    @addTagHelper "*, WebApplication1"
    

     2) 创建TagHelper类:

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Threading.Tasks;
     5 using Microsoft.AspNet.Razor.Runtime.TagHelpers;
     6 using Microsoft.AspNet.Razor.TagHelpers;
     7 
     8 namespace WebApplication1.TagHelpers
     9 {
    10     // You may need to install the Microsoft.AspNet.Razor.Runtime package into your project
    11     [HtmlTargetElement("field")]
    12     public class FieldTagHelper : TagHelper
    13     {
    14         [HtmlAttributeName("label")]
    15         public string Label { get; set; }
    16 
    17         [HtmlAttributeName("cols")]
    18         public int ColumnCount { get; set; }
    19          
    20         public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
    21         {
    22             output.TagName = "div";
    23             output.Attributes.Add("class", "form-group");
    24 
    25             var childContent = await output.GetChildContentAsync();
    26 
    27             output.Content.SetHtmlContent($@" 
    28 <label class='col-md-{ColumnCount} control-label'>{Label}</label>
    29 <div class='form-value col-md-{12 - ColumnCount}'>{childContent.GetContent()}</div>"); 
    30         }
    31     }
    32 }

    3)使用自定义Tag:

    1 <field label="Test Label" cols="4">
    2     <input asp-for="TestName" class="form-control" />
    3 </field>
  • 相关阅读:
    java学习笔记 --- 面向对象3
    java学习笔记 --- 面向对象2
    Idea代码生成插件制作
    口罩检测比赛
    公开人脸检测库dlib的使用介绍
    VS工程中image watch的安装和卸载
    mysql导入导出sql文件
    git 本地项目推送至远程仓库
    mysql 操作提示 1366 Incorrect string value
    python入门
  • 原文地址:https://www.cnblogs.com/ybst/p/5028277.html
Copyright © 2020-2023  润新知