首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用Html.BeginForm()的地方使用Asp.net

在使用Html.BeginForm()的地方使用Asp.net
EN

Stack Overflow用户
提问于 2017-06-21 17:52:57
回答 1查看 629关注 0票数 0

我在一些Asp.net M中使用了Html.BeginForm(),但我不明白它的使用在哪里变成了强制性的.Why我真的需要在我的视图中使用它。这可能是一个愚蠢的问题,但我对在mvc中使用这个Html-helper感到困惑和困惑...??

下面我有搜索选项的代码,但我不知道FormMethod.Get是什么意思,所以请简要解释一下?

代码语言:javascript
复制
using(Html.BeginForm("Index","Home",FormMethod.Get))
{ 
    <b>Search Option</b>

    @Html.TextBox("Search") <input type="submit"  value="Search"/>
}
EN

回答 1

Stack Overflow用户

发布于 2017-06-21 18:22:25

Html.BeginForm是一个帮助方法,它为页面/视图的form标记生成HTML标记。当你使用它将using,它也会正确地创建一个结束表单标签(<\form>)。因此,基本上当razor执行问题中的代码时,它将生成如下标记

代码语言:javascript
复制
<form action="/Home/Index" method="get">
 <!-- markup generated by other elements inside the form will goes here -->
</form>

使用帮助器方法的一个好处是,它可以正确地生成正确的标记,以便您/i编写表单标记的标记和所需的属性,这很容易发生人为错误(输入错误)。此外,帮助器方法始终为action属性值生成操作方法的正确相对路径。

对于你的视图来说,使用这个方法是不必要的,。如果您更喜欢编写清晰可读的UI代码,则可以通过将helper方法调用替换为以下内容来实现

代码语言:javascript
复制
<form action="/Home/Index" method="get">
    <b>Search Option</b>
    <input id="Search" name="Search" type="text" value="">
    <input type="submit" value="Search">
</form>

在ASP.NET核心中,我们有标记助手,它允许我们编写代码来生成表单(或其他表单元素),就像上面手写的html标记一样。因此,代码基本上看起来更像是纯HTML语言,而不是C#或VB.NET

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44672717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档