私のコードは十分に簡単です。なぜ私のasp.net mvcフォームはGETの代わりにPOSTingですか?
<% using(Html.BeginForm(FormMethod.Get)) %>
<% { %>
Search for in Screen Name and Email: <%: Html.TextBox("keyword", Request.QueryString["keyword"]) %>
<button type=submit>Search</button>
<% } %>
私はに実行している問題は、私がこのフォームを送信すると、値はクエリ文字列に追加されていないということです。代わりに、フォームが投稿リクエストによって送信しているようです。生成されたHTMLを見ると、次のようになります。
<form action="/find/AdminMember/MemberList" method="post">
Search for in Screen Name and Email: <input id="keyword" name="keyword" type="text" value="" />
<button type=submit>Search</button>
</form>
なぜ誰が知っていますか?これはかなりシンプルでわかりやすいようです。
ok ...彼らは '(Html.BeginForm(FormMethod.Get))'を使って作業して欲しいと思います。投稿は、アクションとコントローラを明示的に指定することなく動作します。私はGETがなぜそうでないのか分からない。少なくともランタイムエラーが発生するはずです。 – quakkels
それは大変面倒ですが、すべてのオーバーロードを見れば、それを行う方法は本当にありません。 – hunter
@quakkelsでは、このようなオーバーロードは組み込まれていませんが、同じタスクを達成するための拡張メソッドを簡単に記述することができます。 –