.Net Core标签助手

原创 Laughing  2017-07-11 21:22  阅读 266 次 评论 0 条

在 Razor 文件中,Tag Helpers 能够让服务端代码参与创建和渲染 HTML 元素。例如,内置的ImageTagHelper能够在图像名称后面追加版本号。每当图像变化时,服务器为图像生成一个新的唯一的版本,因此保证客户端得到当前图像(而不是旧的缓存图像)。对于常见任务有许多内置的 Tag Helpers - 比如创建表单,链接,加载资产以及更多 - 在公共的 Github 存储库中的和以 NuGet 包的方式存在的可用资源。在 C# 里编写 Tag Helpers,它们的目标是基于元素名称,特性名称或者父标签的 HTML 元素。

创建自定义标签助手

创建
  1. using Microsoft.AspNetCore.Mvc.Rendering;  
  2. using Microsoft.AspNetCore.Razor.TagHelpers;  
  3.   
  4. namespace NetCoreSimpleDemo  
  5. {  
  6.     public class TextCollectionTagHelper:TagHelper  
  7.     {  
  8.         public string Color { getset; }  
  9.         public override void Process(TagHelperContext context, TagHelperOutput output)  
  10.         {  
  11.             output.TagName = "div";  
  12.             output.Attributes.Add("style""color:"+Color);  
  13.             var text = "Hello,World";  
  14.             var h1 = new TagBuilder("h1");  
  15.             h1.InnerHtml.Append(text);  
  16.             output.Content.AppendHtml(h1);  
  17.             base.Process(context, output);  
  18.         }  
  19.     }  
  20. }  
使用
  1. @addTagHelper *,NetCoreSimpleDemo  
  2. @addTagHelper Form  
  3. <div>  
  4.     <text-collection color="red"></text-collection>  
  5. </div>  
  6. <form asp-action="FormAction" asp-controller="Home" asp-area="" class="form-group" method="post">  
  7.       
  8. </form>  
本文地址:https://www.lisen.me/net-core-tag-assistant.html
版权声明:本文为原创文章,版权归 木子网 所有,欢迎分享本文,转载请保留出处!

发表评论


表情