Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将Html表单值视图获取到控制器操作方法_C#_Asp.net Mvc - Fatal编程技术网

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);
   }