2016-09-22 85 views
0

我想通过下拉列表选择值并传递给SQL查询,但我不知道如何才能进行下一步。如何将Dropdownlist值传递给SQL查询?

查看:

@{ 
List<SelectListItem> List = new List<SelectListItem>(); 
minList.Add(new SelectListItem { 
    Text=DateTime.Now.AddMinutes(-1).ToString(), 
    Value="1" 
}); 
minList.Add(new SelectListItem 
{ 
    Text = DateTime.Now.AddMinutes(-2).ToString(), 
    Value = "2" 
}); 
minList.Add(new SelectListItem 
{ 
    Text = DateTime.Now.AddMinutes(-3).ToString(), 
    Value = "3" 
});}@Html.DropDownList("Min",List, "Select") 

SQL语句(C#):

string sqlStr = "Select * From Data WHERE Time BETWEEN @A AND @B"; 
SqlCommand cmd = new SqlCommand(sqlStr, conn); 

DateTime now = DateTime.Now; 
SelectListItem min = new SelectListItem(); 
cmd.Parameters.Add(new SqlParameter("@A", min.Value)); 
cmd.Parameters.Add(new SqlParameter("@B", now)); 
+0

您需要将表单中选定选项的值发布到调用查询的控制器方法。 –

回答

0

在您的控制器的操作方法,你可以使用的FormCollection或的Request.Form得到下拉值。

string strDDLValue = Request.Form["minList"].ToString(); 
+0

您可以将字符串strDdlValue传递给@A参数来替换min.value。让我知道它是否有效。 –

+0

因为我在模型中放置了SQL语句代码,所以...我不知道我能做什么...然后我学会了MVC几天 – LANDEM

+0

您可以请示,您如何调用您的模型方法? –