• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Asp.NetMVC对类HtmlHelper的自定义扩展方法以及如何调用

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

c# 扩展方法出来已久,介绍扩展方法的文章也很多,此处就不多介绍,如有不懂当然可以百度,google一下,园子当中也有超级多的讲解。

大家可以看到这是微软MVC中自带的针对TextBoxFor的三个重载方法。那么我们还可以针对TextBoxFor进行我们自定义的扩展(想要什么样式,只要我们能实现),那么在调用时就方便多了。

那么现在自己实现一个吧。

        public static MvcHtmlString TextBoxFor<TModel>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, DateTime>> expression)
        {
            return htmlHelper.TextBoxFor(expression, new { @class = "date" });
        }

那么可以看到这个强类型的文本在与Model绑定的时候会选择性的针对日期类型的字段进行绑定。它不会与系统自带的冲突,因为他们虽然方法名一样,但是参数类型不太一样,这个在自己扩展的时候注意一下就可以了。
我们调用一下试试

看之前的三个重载现在变成了四个,而且截图的这个正好是我们自定义扩展的。

当然我们调用之前应该要引用的,这里提供三种方法进行引用:

第一种:在相对应的视图View中进行页面引用即可 @using 命名空间

第二种:可以在web.config中进行配置,那么就不需要在视图中进行引用

<configuration>
     <system.web>
         <pages>
             <namespaces>
                 <add namespace="命名空间名称"/>
             </namespaces>
         </pages>
     </system.web>
 </configuration>

第三种:看一下框架中自带的方法所在命名空间System.Web.Mvc.Html,然后将我们自定义扩展方法的命名空间也更改成这个那么就即不用配置也不用引用了。
当然或许还有其他的方法了。

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
ASP.NET 2.0 – 如何巢状化GridView控件 (转自章立民CnBlogs)发布时间:2022-07-10
下一篇:
ASP.NET MVC实现网站验证码功能发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap