Asp.net mvc 4 在ASP.NET MVC4中,如何将值从视图传递到控制器,而不为视图中的模型创建任何对象?

Asp.net mvc 4 在ASP.NET MVC4中,如何将值从视图传递到控制器,而不为视图中的模型创建任何对象?,asp.net-mvc-4,entity-framework-4,asp.net-routing,Asp.net Mvc 4,Entity Framework 4,Asp.net Routing,我不熟悉ASP.NET MVC4和实体框架。我只想将值从视图传递到控制器,我无法获取它。请帮我拿。提前谢谢 这是我的视图代码: <form id="changepassword" method="post" action="@Url.Action("Change", "ChangePassword")"> <input type="password" value="currentpswd" class="form-control pword" pla

我不熟悉ASP.NET MVC4和实体框架。我只想将值从视图传递到控制器,我无法获取它。请帮我拿。提前谢谢

这是我的视图代码:

 <form id="changepassword" method="post" action="@Url.Action("Change", "ChangePassword")">
             <input type="password" value="currentpswd" class="form-control pword" placeholder="Current Password" />
             <input type="password" value="newpswd" class="form-control pword" placeholder="New Password" />
             <input type="password" value="cnfrmpswd"  class="form-control pword" placeholder="Confirm Password" />
             <button class="btn btn-success btn-block" value="change">Submit</button>
             </form>



This is my Controller code:

[HttpPost]
        public ActionResult Change(FormCollection forms)
        {
            if (ModelState.IsValid)
            {
              string currentpswd=Convert.ToString(forms["currentpswd"]);
                string newpass= (string)forms["newpswd"];
                string confirmpass=forms["cnfrmpswd"];
                Tbl_Users user = new Tbl_Users();
                if (newpass == confirmpass)
                {
                    user.UserPassword = newpass;
                    db.SaveChanges();
                }
                else
                {

                }

            }
            return RedirectToAction("Index", "ChangePassword");

        }

提交
这是我的控制器代码:
[HttpPost]
公共行动结果变更(表格收集表格)
{
if(ModelState.IsValid)
{
字符串currentpswd=Convert.ToString(形式为[“currentpswd”]);
字符串newpass=(字符串)表单[“newpswd”];
字符串confirmpass=forms[“cnfrmpswd”];
Tbl_用户用户=新Tbl_用户();
if(newpass==confirmpass)
{
user.UserPassword=newpass;
db.SaveChanges();
}
其他的
{
}
}
返回重定向操作(“索引”、“更改密码”);
}

使用表单集合如何?您将创建一个操作方法,当用户单击post按钮时,该方法将处理post:

它将表单字段的集合发布到控制器,然后您可以使用原始表单字段的Name属性进行引用

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Index(FormCollection forms)
{
   var userPassword = (string)forms["UserPassword"];
   var userSalt  = (string)forms["UserSalt"]; 
} 

在控制器操作中接收对象有什么问题?我在控制器中接收值没有问题。我的模型和数据库中也没有像UserPasswordSalt这样的字段,我只想从中传递值,而不在视图中使用模型字段。请共享您的整个视图代码以及
ChangePassword
操作的get和post操作结果。很抱歉,我没有为此编写任何代码。我的问题是传递值时不使用视图中的model字段,如u=>u.UserName.Start with。我希望有帮助!我已经试过了,但仍然无法得到它。我还试过另一个。我已经更新了我的代码,请检查一下。什么不起作用?你看到错误了吗?调试时,表单集合包含什么?