2012-05-04 51 views
0

我是一个使用asp.net mvc 3的begginer。我想创建一个页面,用户可以输入搜索项并从数据库中检索数据。我已经创建了数据库。我创建的控制器是:使用提交和文本将值传递给控制器​​

public ActionResult SearchIndex(string id) 
{ 
    string searchString=id; 
    var search = from m in db.Searches 
    select m; 

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

    return View(search); 
} 

我想将查看页面的值传递给上述控制器。查看页面中的代码应该从上述控制器中输入一个项目进行搜索?

回答

0

所以里面的表单创建您的看法......是这样的:

@using (Html.BeginForm()) 
{ 
    <label>Search:</label> 
    <input type="text" name="searchString" /> 

    <input type="submit" name="submit" /> 
} 

然后在您的控制器可以使用的FormCollection对象来抓住你的搜索字符串是这样的:

[HttpPost] 
public ActionResult SearchIndex(FormCollection formCollection) 
{ 
    string searchString = formCollection["searchString"]; 
    ... 
} 
+0

什么是否在@using(Html.BeginForm())中存在争论? –

+0

你是什么意思? – c0deNinja

相关问题