gpt4 book ai didi

asp.net - MVC中两个数相加

转载 作者:行者123 更新时间:2023-12-05 01:47:37 25 4
gpt4 key购买 nike

我正在尝试在 MVC 中添加两个数字。

我的要求是“我在 View 中有 2 个文本框,我必须从中检索数据到 Controller ”

查看:

@using (Html.BeginForm("Addition", "Addition", FormMethod.Post))
{
<input id="Text1" type="text" value=@ViewBag.a name="firstNum" />
<input id="Text2" type="text" value=@ViewBag.b name="secondNum" />
<input id="Text3" type="text" value=@ViewBag.result />

<input type="submit" value="Submit" />
}

Controller 名称:添加 Action 名称:加法

[HttpPost]
public ActionResult Addition(FormCollection fc)
{
string[] keyss = fc.AllKeys;
ViewBag.a = fc.Keys[0];
ViewBag.b = fc.Keys[1];
ViewBag.total = ViewBag.a + ViewBag.b;
return View();
}

现在,我想从此表单集合中检索文本框的值。

谢谢。

最佳答案

MVC 的强大功能之一是模型绑定(bind)器——您在这里完全忽略了它。创建一个 View 模型以匹配 View 的预期内容

public class AdditionViewModel
{
public int A { get; set; }
public int B { get; set; }
public int Result { get; set; }
}

在您的操作中使用它作为预期参数

[HttpPost]
public ActionResult Addition(AdditionViewModel model)
{
model.Result = model.A + model.B;
return View(model);
}

然后终于在你的视野中

@model AdditionViewModel

@using (Html.BeginForm("Addition", "Addition", FormMethod.Post))
{
@Html.EditorFor(x => x.A)
@Html.EditorFor(x => x.B)
@Html.DisplayFor(x => x.Result)

<input type="submit" value="Submit" />
}

关于asp.net - MVC中两个数相加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22809509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com