我想从我的下拉列表中选择年份,那一年将被传递到where
子句中的程序并获得结果。它工作正常,但在视图中,所选值仅可见。
示例如果我从下拉列表中选择2015,其中包含2015年和2016年的值,那么在视图上只有2015在下拉列表中可见。 记录是完美的。
模型
public class Data
{
[Key]
public string DataName { get; set; }
public int Year { get; set; }
}
控制器
public ActionResult Test()
{
VMNews objnews = new VMNews();
if (Request["ddlYear"] != null)
{
string selectedValue = Request["ddlYear"];
objnews.DataName = db.Database.SqlQuery<Data>("usp_year @Year",new SqlParameter("@Year",selectedValue)).ToList();
}
Response.Write("Nothing Selected");
return View("Index",objnews);
}
查看
using (Html.BeginForm("Test","Home"))
{
@Html.DropDownList("ddlYear", new SelectList(Model.MovieName, "Year", "Year"), "ALL")
<button type="submit">Button</button>
}
}
仅在视图级别存在问题,我在控制器和视图ForMethod.POST上使用了HTTPPost选项,但它没有用。
答案 0 :(得分:0)
如果我直截了当,你想添加一个超过1值的listItem? 在这种情况下,您应该将数据连接到一个sigle字符串值 (删除public int Year {get; set;} / add public string Year {get; set;})然后将其拆分为POST(ActionResult Test)并在程序中使用它们。