zoukankan      html  css  js  c++  java
  • MVC4.0 扩展辅助方法

    新年第一天上班,写个博客开头吧!

    在MVC中,辅助类是很常见的,比如说,Html.TextBox()、Html.DropDownListFor()等,这些都是微软帮我们封装好的,可以直接调用的,它们解析出来的结果都是一段Html代码,而实际项目中,我们可能需要自己去扩展一些我们需要的辅助类,比如说下面这段代码:

    @UserHelpers.UserMsg(this.Html, ViewBag.Msg, ViewBag.MsgType),它的作用是用于系统消息提示。

    我们转到它的定义看看:

     1 public static MvcHtmlString UserMsg(this HtmlHelper html, string msg, string msgType)
     2         {
     3             TagBuilder tb = new TagBuilder("div");
     4             tb.AddCssClass("alert divShadow " + msgType);
     5             tb.GenerateId("alertMsg");
     6 
     7             TagBuilder tagItem1 = new TagBuilder("a");
     8             tagItem1.AddCssClass("close");
     9             tagItem1.Attributes.Add("href", "#");
    10             tagItem1.Attributes.Add("data-dismiss", "alert");
    11             tagItem1.SetInnerText("×");
    12             tb.InnerHtml += tagItem1.ToString();
    13 
    14             TagBuilder tagItem2 = new TagBuilder("strong");
    15             tagItem2.GenerateId("msgContent");
    16             tagItem2.SetInnerText(msg);
    17             tb.InnerHtml += tagItem2.ToString();
    18 
    19             return MvcHtmlString.Create(tb.ToString());
    20         }
    View Code

    UserHelper是辅助类名,UserMsg是辅助方法名,它包括了三个参数,第一个是系统默认的,后两个是我们写进去的。并且,要在View中生成Html代码,我们需要指定辅助方法的返回类型为MvcHtmlString.
    方法内代码解释:

    TagBuilder用于生成Html标签。

    当然,想要在View中显示什么内容,需要自己去拼接啦。

    完了,写得好简单,哈哈,祝自己在新的一年里工作顺利!

  • 相关阅读:
    vue的devTools谷歌插件安装使用
    springcloud(14)seata分布式事务
    springcloud(13)zipkin工具的使用
    springcloud(12)SentinelResource注解配置应用及其他
    springcloud(11)sentinel安装和基本使用
    springcloud(10)Nacos集群(windows环境)
    springcloud(9)Nacos基本操作
    springcloud(8)GateWay网关
    springcloud(7)hystrix服务熔断和dashboard
    通用语言
  • 原文地址:https://www.cnblogs.com/ghwillbe/p/5194526.html
Copyright © 2011-2022 走看看