0

私はMVCに非常に慣れていません

フォーム送信時にパラメーターをコントローラーに渡す問題を克服するために、助けが必要です

私が持っているのは、次のコントローラーとビューです

public ActionResult Index(string method ="None")
    {
        if (Request.HttpMethod == "POST")
        {

            switch (method)
            {
                case "Add10":
                    _bag.GetBag = Get100Products().Take(10).ToList<Product>();
                    break;
                case "Clear":
                    _bag = null;
                    _bag.GetBag = null;
                    _bag = new Models.Bag();
                    break;
                case "Add":
                    if ((Request.Form["Id"] != null) && (Request.Form["Id"] != ""))
                    {
                        if (_bag.GetBag.Count < 100)
                        {
                            var p = GetProduct(Request.Form["Id"]);
                            int qnt = Convert.ToInt16(Request.Form["qnt"]);
                            if (p.ItemNumber != null)
                            {
                                p.Quantity = qnt;
                                p.Index++;
                                _bag.Item = p;
                            }
                        }
                    }
                    break;

            }
        }
  return View(_bag.GetBag);
 }

およびビューのビュー部分

 <div style="vertical-align:middle">

@using (Html.BeginForm("", "Home", new { method = "Add10" }, FormMethod.Post))
{
<!-- form goes here -->

 <input type="submit" value="Add 10 Items to bag" />

}

 @using (Html.BeginForm("GetDiscount", "Home", FormMethod.Post))
{
 <div>
 <!-- form goes here -->

  <input type="submit" value="Get Discount" />
    With MAX time in seconds  <input type="text" name="time" maxlength="2" value="2" />

  </div>
}


@using (Html.BeginForm("", "Home", new { method = "Clear" }, FormMethod.Post))
 {
   <input type="submit" value="Empty the bag" />
 }
</div> 

だから私は、ボタンがクリックされたときに10アイテムをバッグに追加してメソッド値「Add10」をインデックスコントローラーに渡し、クリックするとバッグを空にしてインデックスコントローラーのメソッド値を「クリア」することを期待しています

ただし、常に「なし」と表示されます

私は何を間違えましたか?

</form>
4

2 に答える 2