フォームデータをASP MVCコントローラに送信しようとしていますが、フォームコレクションが空です。アクション内の変数は適切にバインドされています。これは私の剃刀のフォームですasp mvc投稿データを送信しない
@foreach (var recipe in Model.RecipesInCategory) {
<form name="input" action="mycontroller/myAction/@Model.Id1/@Model.Id2" method="post">
<fieldset>
<table >
<tr>
<td>
<input id="AddBtn" type="submit" value="Add" />
<select id="dayOfWeek" >
<option value="Sunday">Sunday</option>
<option value="Monday">Monday</option>
<option value="Tuesday">Tuesday</option>
<option value="Wednesday">Wednesday</option>
<option value="Thursday">Thursday</option>
<option value="Friday">Friday</option>
<option value="Saturday">Saturday</option>
</select>
</td>
</tr>
</table>
</fieldset>
</form>
}
ここは私のコントローラです。 2つのGUIDが適切に入力されていますが、dow変数は常にnullです。実際、フォームには全くエントリがありません。
[HttpPost]
public ActionResult myAction(Guid Id1, Guid Id2)
{
var dow = this.Request.Form["dayOfWeek"];
私はこのページに多くのフォームがループで作成されていることに注意してください。問題ありますか?
ところで、あなたは 'Request.Form'の代わりにアクションパラメータを使うべきです。 – SLaks
私はWPFの世界から来て、私のHTMLは非常に弱いです。私は、HTMLヘルパーがこの時点でHTMLから私をあまりにも孤立させていると感じています。抽象概念を使用する前に、何が起こっているのかを知りたい。 –
私はHTMLヘルパーについて話していません。私は行動パラメータについて話している。それらは手動で 'Request'を読むよりはるかに簡単です。 – SLaks