MVC Helper Methods

在.net MVC中经常会见到特别的写法

比如 @Url.Action( ) @Url.Conyent( ) @Html.Displayfor( )等等

这些 写法就是我们这里要讲的  Helper Methods 帮助方法,他们帮助干什么呢,也就是他们的主要用途在哪里呢?

他们主要用于在一定的逻辑下 生成html标签 ,以及代码。


内嵌式的helper methods

上面的这些helper methods是mvc框架内建的一些帮助方法,我们也可以创建我们自己的帮助方法,创建的方式分为两类:

内嵌式的外部形式的。

创建内嵌式的写法如下

看上去和普通的C#方法很相似,但有一点不一样,内嵌helper methods是不存在返回值的,他们直接输出标签结果到response流中。

使用的时候同样也很简单

这样子的话输出结果就会被加粗输出来了,使用helper Methods的好处在于可以免去在view页面上存在许多重复的标签 和代码。

我个人是很不喜欢的,我宁愿多写点标签,而不愿意去浪费这个这个脑容量,但是看到这写写法还是要认识的。


外部Helper Methods

外部的帮助方法就是扩展 框架中的HtmlHelper类以及其他helper类 返回 MVCHtmlString 再由框架自行解析,也就是针对这些类编写的一些扩展方法。

     public static class CustomHelpers
    {
        public static MvcHtmlString ListArrayItems(this HtmlHelper html,  string[] list)
        {
            TagBuilder tag = new TagBuilder ("ul" );
            foreach (string str in list)
            {
                TagBuilder itemTag = new TagBuilder ("li" );
                itemTag.SetInnerText(str);
                tag.InnerHtml += itemTag.ToString();
            }
            return new MvcHtmlString (tag.ToString());
        }
    }

这里是通过TagBuilder来拼接html串,最后 返回一个MVCHtmlString对象即可。

使用的时候 @using添加一下引用就可以用了 @Html.ListArrayItems((string[])ViewBag.Fruits)

同样很简单,这个貌似相比内嵌式的helper还是蛮有用的。


这里就暂时介绍下 .net mvc helper Methods的基础由来。

喜欢的话就推荐一下吧,谢谢n(*≧▽≦*)n

时间: 2024-10-08 10:29:27

MVC Helper Methods的相关文章

URL and Ajax Helper Methods

  1.Unobtrusive Ajax URL and Ajax Helper Methods,布布扣,bubuko.com

Creating Custom Helper Methods 创建自定义辅助器方法----辅助器方法 ------ 精通ASP.NET MVC 5

创建内联的辅助器方法 和 拓展方法 好像类似的功能. 不过写在前台更直观

asp.net MVC helper 和自定义函数@functions小结

asp.net Razor 视图具有.cshtml后缀,可以轻松的实现c#代码和html标签的切换,大大提升了我们的开发效率.但是Razor语法还是有一些棉花糖值得我们了解一下,可以更加强劲的提升我们的开发效率,减少开发bug的出现. Razor 采用的是@ 尾巴符号,正是这个符号成就了Mvc开发效率的提升.下面了解一下和@相关的两个可以重用的helper.functions. 作为现代化的程序员,我们尽可能的遵守一个原则.不要重复你自己.所以能够重构的代码我们都会合并,但是这是对于后台代码C#

Professional C# 6 and .NET Core 1.0 - Chapter 41 ASP.NET MVC

What's In This Chapter? Features of ASP.NET MVC 6 Routing Creating Controllers Creating Views Validating User Inputs Using Filters Working with HTML and Tag Helpers Creating Data-Driven Web Applications Implementing Authentication and Authorization W

010.Controller methods and views --【控制器方法与视图】

Controller methods and views 控制器方法与视图 2017-3-7 9 分钟阅读时长 作者 By Rick Anderson We have a good start to the movie app, but the presentation is not ideal. 我们在movie 应用上已经有了一个好的开始,但是表现层不是很理想. We don't want to see the time (12:00:00 AM in the image below) an

[转]ASP.NET MVC Domain Routing

本文转自:http://blog.maartenballiauw.be/post/2009/05/20/ASPNET-MVC-Domain-Routing.aspx ASP.NET MVC Domain Routing 20. May 2009 08:23 / maartenba / ASP.NET . C# . General . MVC . Projects / Comments (33) Routing Ever since the release of ASP.NET MVC and i

[转]Sorting, Filtering, and Paging with the Entity Framework in an ASP.NET MVC Application (3 of 10)

本文转自:http://www.asp.net/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/sorting-filtering-and-paging-with-the-entity-framework-in-an-asp-net-mvc-application Download Completed Project The Contoso University sample web application de

Creating Form Elements --Using BeginForm and EndForm 使用内建的Form辅助器方法 精通ASP.NET MVC 5

Using the BeginForm and EndForm Helper Methods in the CreatePerson.cshtml File

ASP.NET MVC使用Bootstrap系列(5)——创建ASP.NET MVC Bootstrap Helpers

序言 ASP.NET MVC允许开发者创建自定义的HTML Helpers,不管是使用静态方法还是扩展方法.一个HTML Helper本质上其实是输出一段HTML字符串. HTML Helpers能让我们在多个页面上公用同一段HTML标记,这样不仅提高了稳定性也便于开发者去维护.当然对于这些可重用的代码,开发者也方便对他们进行单元测试.所以,创建ASP.NET MVC Bootstrap Helpers是及其有必要的. 内置的HTML Helpers ASP.NET MVC内置了若干标准HTML