如何让用户从视图到控制器输入数据然后插入数据库,在MVC中?

时间:2016-07-05 10:13:58

标签: asp.net ajax asp.net-mvc ado.net

我是初学者,目前正在为我的学习目的开设一个小项目。迷你数据库搜索门户。我创建了前端视图。它有一个搜索框和一个按钮。现在我需要的是,我必须从DB获取数据,与用户输入的搜索词相关,点击按钮。

如何让用户从视图到控制器输入数据并对其进行处理以进行进一步操作。

2 个答案:

答案 0 :(得分:1)

一般代码:

查看:

@using(Html.BeginForm("Search","Test"))
{
  <input type="text" name="txtName"/>
  <input type="submit" value="Generate report" />
}

<强>控制器

[HTTPPost]
public ActionResult Seacrh(FormCollection form) // "Search" is action name specified in view for controller "TestController"
{
    string text = form["txtName"]; // txtName is name of input in view.
}

然而,要充分利用MVC,请查看Model Binding in MVC

答案 1 :(得分:0)

我建议您阅读此article,它有一个示例添加搜索的不同方式。

您可以在Controller和View中更新Index方法,如下所示:

1)将一个表单添加到将发布到视图本身的视图中 图

@using (Html.BeginForm()){    
     <p> Title: @Html.TextBox("SearchString") <br />   
     <input type="submit" value="Filter" /></p> 
    } 

2)向Index方法添加一个参数,根据传递的参数过滤内容。 public ActionResult Index(string searchString)

控制器

var movies = from m in db.Movies 
              select m;

if (!String.IsNullOrEmpty(searchString)) 
{ 
    movies = movies.Where(s => s.Title.Contains(searchString)); 
}

return View(movies);