C# 如何将Html表单值视图获取到控制器操作方法
这是我的输入表单,希望将输入文本值传递给控制器,但控制器中的值仍然为空,另一个问题是不能命中我的控制器 当我更改控制器的名称时创建操作,如索引我的操作指向此操作,但无法将值作为参数传递。我能做什么C# 如何将Html表单值视图获取到控制器操作方法,c#,asp.net-mvc,C#,Asp.net Mvc,这是我的输入表单,希望将输入文本值传递给控制器,但控制器中的值仍然为空,另一个问题是不能命中我的控制器 当我更改控制器的名称时创建操作,如索引我的操作指向此操作,但无法将值作为参数传递。我能做什么 @使用(Html.BeginForm(“创建”、“帐户”、FormMethod.Post、新的{@id=“表单ui”、@class=“表单水平表单标签左”、“novalidate=“true”、enctype=“多部分/表单数据”})) { 名字: 姓氏: 电邮地址: 用户名: 密码: }您需要将用
@使用(Html.BeginForm(“创建”、“帐户”、FormMethod.Post、新的{@id=“表单ui”、@class=“表单水平表单标签左”、“novalidate=“true”、enctype=“多部分/表单数据”}))
{
名字:
姓氏:
电邮地址:
用户名:
密码:
}
您需要将用于模型绑定和作为键值对过帐的名称
属性放回控制器操作。因此,将所有输入元素更改为具有name属性:
<input type="text" class="form-control" id="txt_fname" name="txt_fname">
现在,您的操作方法将只有一个类型为AccountVM
的参数:
[HttpPost]
public ActionResult Create(AccountVM account)
{
//Insert Value
account.CreateAccount();
return View();
}
您还可以在调用CreateAccount
之前添加验证,如:
if(ModelState.IsValid)
{
//Insert Value
account.CreateAccount();
return View();
}
else
{
return View(account);
}
@MuhammadSaqib很高兴这有帮助,别忘了接受答案:)愿上帝保佑你幸福,但第二点不清楚,请在我更改控制器名称索引以创建其非点击操作方法时回答第二点???你的表单中有
吗?不能点击操作结果它只更改输入按钮名称吗
if(ModelState.IsValid)
{
//Insert Value
account.CreateAccount();
return View();
}
else
{
return View(account);
}