質問

Html.BeginForm()は何を行い、必要ですか?

役に立ちましたか?

解決

本質的に、それは

を出力します
<form>

タグをHTML出力に挿入します。ページがPOST(つまり、フォームを送信するためにボタンが押される)する場合、フォームタグは必須です。これにより、ブラウザはフォームの送信先を認識します。 それがあなたのために今働いているかもしれない理由は、あなたがボタンを持たないかもしれないからです-jsutリンク(私はあなたのアプリケーションが何であるか分かりません、それでここで推測します)。

要するに、アクションにフォームを送信できるようにしたい場合、はい、そのタグは必須です。リンクを介してすべてを行う場合、フォームタグは必要しないため、BeginFormは実際には必要ありません。

HTH。

PS ASP.NET MVCに関するScott Guthrieのブログ記事を読んでください。彼らは 本当に あなたを始めるのに大いに役立ちます。

他のヒント

BeginForm()は、提供されたパラメーターを使用してフォームタグを単に書き出します。あなたが持っていないフォームを持っていない場合、またはAJAXとのすべてのページのやり取りをしている場合、あなたはそれを必要としないかもしれません。ページにリンクしかない場合、フォームは不要です。ただし、AJAXを使用しない限り、フォームアクションを使用してフォームタグを挿入するか、手動でフォームタグを挿入しない限り、コントローラーアクションへのPOSTリクエストを行うことはできません。

まったく必要ありません。フォームタグの設定を処理する単なるヘルパーです。ただし、使用することをお勧めします。私の直感では、AntiForgeryTokenヘルパーと関連属性を使用して現在対処しなければならないXSS攻撃などを処理するために、このヘルパーを強化すると言います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top