Multiselect DropdownList值插入SQL与ASP.NET MVC
问题描述:
根据我选择的值,只有一个值foreach循环,但是我想要有多个值并将它们保存到数据库中。我怎么能做到这些?Multiselect DropdownList值插入SQL与ASP.NET MVC
CSHTML ..
@Html.DropDownListFor(d => d.Ehliyet.EhliyetId,
(IEnumerable<SelectListItem>)ViewBag.EhliyetList,
"Ehliyet Seçiniz...", new { @class = "form-control chosen-select" , @multiple="multiple"})
控制器
public ActionResult CreateTeacher()
{
var ehliyet = EhliyetManager.EhliyetList();
var list1 = new SelectList(ehliyet, "EhliyetID", "EhliyetAdi");
ViewBag.EhliyetList = list1;
return View();
}
[HttpPost]
public ActionResult CreateTeacher(User user, Teacher teacher, Ehliyet ehliyet)
{
TempData["EventResult"] = TeacherManager.addTeacher(user, teacher, ehliyet);
if (((SG_BLL.Tools.Result)TempData["EventResult"]).Status.Equals("error"))
{
var Ehliyet = EhliyetManager.EhliyetList();
var list1 = new SelectList(Ehliyet, "EhliyetID", "Ehliyet");
ViewBag.EhliyetList = list1;
}
return RedirectToAction("CreateTeacher");
}
教师经理
public static Result addTeacher(User newUser, Teacher teacher, Ehliyet Ehliyet)
{
using (SGContext db = new SGContext())
{
try
{ var TeacherEhliyetRepo = new Repository<TeacherEhliyet>(db);
var ehliyet = EhliyetManager.EhliyetList();
TeacherEhliyet teacherEhliyet = new TeacherEhliyet();
foreach (var item in ehliyet)
{
if (item.IsChecked ==false)
{
teacherEhliyet.EhliyetID = Ehliyet.EhliyetId;
teacherEhliyet.TeacherId = teacher.TeacherId;
TeacherEhliyetRepo.Add(teacherEhliyet);
}
}
}
}
}
Ehliyet经理
public static List<Ehliyet> EhliyetList()
{
using (SGContext db = new SGContext())
{
try
{
var repo = new Repository<Ehliyet>(db);
var ehliyetList = repo.Listele().Where(d => d.IsChecked == false);
return ehliyetList.ToList();
}
catch (Exception)
{
return null;
}
}
}
}
答
这个HTML Attribute @ multiple应该是“multiple”而不是“true”吗?
@Html.DropDownListFor(d => d.Ehliyet.EhliyetId,
(IEnumerable<SelectListItem>)ViewBag.EhliyetList,
"Ehliyet Seçiniz...", new { @class = "form-control chosen-select" , @multiple ="multiple"})
而且也,列表框也可以作为你的目的:https://msdn.microsoft.com/en-us/library/system.web.mvc.html.selectextensions.listbox.aspx
哪一种方法将受到重创保存? –
添加教师与TeacherManager –
添加教师没有列表,您没有参加列表参数 –