全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

asp.net core新特性之TagHelper标签助手

今天开始,我就来说说asp.net core的新特性,今天就说说TagHelper标签助手。虽然学习.net,最有帮助的就是microsoft的官方说明文档了,里面把一些使用说明都写的非常清楚,但奈何.net core放入文档微软还没来得及翻译,对于英文不好的人来说简直就是看的艰辛。所以今天就来学习学习这标签助手,和博客园大佬分享分享经验。

  想看Microsoft官方文档和Git项目的可以直接点击以下传送门~~

  asp.net core 官方文档

  asp.net core github项目

  说起TagHelper给我的印象,有点像asp.net form当中的服务器端控件,又有点像Angular或者Vue当中的“组件”的后端实现版本。用户可以将一组html标签集合转换为一个自定义标签,实现了html代码的复用。

  那么正文开始~~

  首先,我们需要安装一个vs2017插件:Razor Language Services。这个插件能在html中智能提示用户自定义的标签助手。

  https://marketplace.visualstudio.com/items?itemName=ms-madsk.RazorLanguageServices

创建一个asp.net core项目

使用微软定义的标签助手,在安装了插件后,使用标签助手的标签会进行高亮显示

上图中environment、link、a标签均使用了标签助手实现各自的功能

<a asp-area="" asp-controller="Home" asp-action="Index" class="navbar-brand">taghelpersample</a>

a标签中通过使用asp-controller,asp-action自定义属性来实现路由访问。

这时有人会说,我也可以使用@Html类来实现相同功能,为什么需要使用TagHelper?

@Html.ActionLink("taghelpersample", "Index", "Home",null, new { Class = "navbar-brand" })

确实,使用@Html帮助类我们能实现相同的功能,但是使用标签助手的方式不是更加符合html的标签语法吗,对于强迫症程序员简直就是福音~~。而且对于标签的原有属性的添加例如class,标签助手的使用也更加方便。

<!--标签助手版form-->
<form asp-controller="Home" asp-action="Index" class="form-horizontal" method="post">

</form>
<!--Html帮助类版form-->
@using (Html.BeginForm("Index", "Home", FormMethod.Post,, new { Class = "form-horizontal" }))
{

}


此外,标签助手的另外一个特色就是可以自定义,具体步骤如下:

(1)创建派生自TagHelper类的Class

 //类会默认转换为<text-collection></text-collection>
   public class TextCollectionTagHelper:TagHelper
 {
  public override void Process(TagHelperContext context, TagHelperOutput output)
  {
   base.Process(context, output);
  }
 }


(2)设置属性与基本类

public string Color { get; set; }

  public override void Process(TagHelperContext context, TagHelperOutput output)
  {
   output.TagName = "div";
   output.Attributes.Add("style", "color:" + Color);
   var text = "Hello,World";
   var h1 = new TagBuilder("h1");
   var h2 = new TagBuilder("h2");
   var h3 = new TagBuilder("h3");
   var h4 = new TagBuilder("h4");
   var h5 = new TagBuilder("h5");
   var h6 = new TagBuilder("h6");
   h1.InnerHtml.Append(text);
   h2.InnerHtml.Append(text);
   h3.InnerHtml.Append(text);
   h4.InnerHtml.Append(text);
   h5.InnerHtml.Append(text);
   h6.InnerHtml.Append(text);
   output.Content.AppendHtml(h1);
   output.Content.AppendHtml(h2);
   output.Content.AppendHtml(h3);
   output.Content.AppendHtml(h4);
   output.Content.AppendHtml(h5);
   output.Content.AppendHtml(h6);
  }


(3)在_ViewImports.cshtml导入类命名空间

@addTagHelper *,taghelpersample

(4)在cshtml中使用标签助手

<text-collection color="red"></text-collection>
<text-collection color="blue"></text-collection>
<text-collection color="#666"></text-collection>

(5)调试效果

OK,今天关于TagHelper就分享到这。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# asp.net  # core  # TagHelper  # asp.net core标签助手的高级用法TagHelper+Form  # asp.net core razor自定义taghelper的方法  # Razor TagHelper实现Markdown转HTML的方法  # Visual Studio 2017下ASP.NET CORE的TagHelper智能提示解决办法  # NET Core TagHelper实现分页标签  # 解读ASP.NET 5 & MVC6系列教程(13):TagHelper  # ASP.NET Core MVC中的标签助手(TagHelper)用法  # 自定义  # 文档  # 微软  # 来实现  # 转换为  # 大佬  # 的人  # 我也  # 我就  # 还没  # 又有  # 能在  # 英文  # 可以直接  # 会说  # 最有  # 可以使用  # 想看  # 另外一个  # 就来 


相关文章: 如何制作算命网站,怎么注册算命网站?  高端网站建设与定制开发一站式解决方案 中企动力  如何高效配置香港服务器实现快速建站?  如何选择适配移动端的WAP自助建站平台?  建站之星上传入口如何快速找到?  个人网站制作流程图片大全,个人网站如何注销?  想学网站制作怎么学,建立一个网站要花费多少?  建站主机如何选?性能与价格怎样平衡?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略  常州自助建站费用包含哪些项目?  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  如何通过IIS搭建网站并配置访问权限?  ,南京靠谱的征婚网站?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  开源网站制作软件,开源网站什么意思?  高端建站三要素:定制模板、企业官网与响应式设计优化  建站之星如何快速更换网站模板?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  建设网站制作价格,怎样建立自己的公司网站?  如何高效生成建站之星成品网站源码?  如何用PHP工具快速搭建高效网站?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  临沂网站制作企业,临沂第三中学官方网站?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  php条件判断怎么写_ifelse和switchcase的使用区别【对比】  建站之星图片链接生成指南:自助建站与智能设计教程  制作农业网站的软件,比较好的农业网站推荐一下?  建站主机与虚拟主机有何区别?如何选择最优方案?  如何快速启动建站代理加盟业务?  在线制作视频网站免费,都有哪些好的动漫网站?  郑州企业网站制作公司,郑州招聘网站有哪些?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  西安专业网站制作公司有哪些,陕西省建行官方网站?  如何快速搭建高效简练网站?  定制建站流程解析:需求评估与SEO优化功能开发指南  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何通过宝塔面板实现本地网站访问?  如何在阿里云域名上完成建站全流程?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  如何用IIS7快速搭建并优化网站站点?  建站之星后台密码遗忘或太弱?如何重置与强化?  宝塔面板如何快速创建新站点?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  浅析上传头像示例及其注意事项 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。