0

在 Asp.Net MVC 中,我想在每次提交表单时增加一个模型属性(单击按钮)。

我已经尝试过 HttpGet 和 HttpPost。使用 HttpGet,该值始终被查询字符串覆盖,并且始终为 0。使用 HttpPost,该值从 0 开始,我单击按钮并递增到 1。但是当我再次单击它时,它以 0 的形式出现并递增为 1。

据我了解,它 Inputs 0, 0+1 = 1, Outputs 0

为了简单起见:

@using (Html.BeginForm())
{
    @Html.HiddenFor(x=>x.Value) or @Html.Hidden("Value", Model.Value)
    or even <input type="hidden" value="@Model.Value" />
    <input type="submit" value="Click Me" />
}

public ViewResult ActionMethod(Model model)
{
    model.Value++;
    return View(model);
}

我的问题基本上是这样的: 每个按钮单击 C# ASP.NET 但在 MVC 框架中的增量数。

你如何操纵这样的模型属性?我不想使用 Javascript。

4

2 回答 2

0

据我所知,这是唯一的解决方案:

我发现这个工作,但它真的很糟糕

int temp = ++model.Value;
ModelState.Remove("Value");
model.Value = temp;

如果我将模型参数传递给视图,则视图应该通过获取我在模型当前状态中传递的任何内容来绑定该参数。

于 2012-04-21T15:55:35.817 回答
-2

你必须打电话

UpdateModel(model); 

IIRC。

于 2012-04-20T22:27:53.280 回答