ASP.NET 中HTML和Form辅助方法

本文介绍了ASP.NET MVC中Form辅助方法的使用方法及其重要属性action和method,通过示例展示了如何使用BeginForm辅助方法简化HTML代码,并讨论了HTML辅助方法在防止CSRF攻击中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Form辅助方法

Form最重要的属性就是action和method,action指明form中的数据被提交到哪里,method指明用什么方法,默认为GET,下面是一个简单的例子:

    <form action="/Home/Search" method="get">
        <input name="q" type="text"/>
    </form>

如果使用 ASP.Net MVC , Home/Search往往表示HomeController的Search 方法,配合MVC使用时,如果直接也这样的HTML代码有如下几个问题:如果整个网站要改变Route的规则,将至改为/Search/Home,也就是Controller在后面,我们就得该这段HTML代码。虽然不会很经常,但是也有可能,如果使用Html.BeginForm辅助方法,就不用担心这个问题了。

public static MvcForm BeginForm(this HtmlHelper htmlHelper, string actionName, string controllerName, RouteValueDictionary routeValues, FormMethod method, IDictionary<string, object> htmlAttributes);

BeginForm有很多使用默认值的重载方法,就不一一介绍了, 上面这个是的一个最全的方法,分别介绍各个参数的意义吧。

 

BeginForm有两种使用方法,之一:

    @using (Html.BeginForm("Search", "Home", FormMethod.Get))
    {
        <input name="q" type="text" />
    }

 之二:

    @{Html.BeginForm("Search", "Home", FormMethod.Get);}
    {
    <input name="q" type="text" />
    }
    @{Html.EndForm();}

 用哪个就看个人喜好了。

HTML辅助方法

 HTML的辅助方法有很多,下面一一介绍。

 @Html.AntiForgeryToken()

这是用来防止CSRF(Cross-Site Request Forgery),这篇文章详细介绍了这个辅助方法。

 

转载于:https://www.cnblogs.com/whyandinside/p/4189868.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值