0

アイテムのリストがあり、次と前の2つのボタンでそれらを移動したい。

これは私のモデルです:

 public class Pedido 
{ 
    public int Pos { get; set; } 
    .................. 
}

コントローラー:

public ActionResult Index() 
    { 
        Pedido ped = new Pedido(); 
        ped.Pos = 2; 
        return View(ped); 
    } 

    [HttpPost] 
    public ActionResult Index(Pedido p) 
    { 
        p.Pos++; 
        return View(p); 
    }

とビュー:

<form method="post"> 
@Html.Hidden("Pos", Model.Pos) 
@Model.Pos     
<input type="submit" value="Sig" />
</form>

アプリケーションを実行すると、ビューに "2" (@Html.Pos=2) と隠しフィールド値 =2 (OK) が表示されます。ボタン sig を押します。@Html.Pos=3 および非表示の値 =2 なぜ?. 次回、httlpostアクションp.Pos = 2でボタンパラメータ「p」をクリックします

どうすれば解決できますか?

ありがとう

4

2 に答える 2

0

私はそれを解決します: ModelState.Remove("Pos")

于 2012-09-07T08:00:50.900 に答える
0

あなたは2つの別々のフィールドをポストバックしています。代わりにこれを試してください:

@Html.HiddenFor(m => m.Pos)
@Model.Pos

Pos非表示の入力をプロパティに適切にバインドするには。

于 2012-09-07T08:03:14.440 に答える