繁体   English   中英

多选DropdownList值使用ASP.NET MVC插入SQL

[英]Multiselect DropdownList Values Insert SQL With ASP.NET MVC

根据我选择的值,foreach循环只有一个值,但我想拥有多个值并将它们保存到数据库中。 我该怎么办?

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属性@ multiple =“ multiple”而不是“ true”吗?

@Html.DropDownListFor(d => d.Ehliyet.EhliyetId, 
    (IEnumerable<SelectListItem>)ViewBag.EhliyetList,  
    "Ehliyet Seçiniz...", new { @class = "form-control chosen-select" , @multiple ="multiple"})

同样,ListBox也可以满足您的目的: https : //msdn.microsoft.com/zh-cn/library/system.web.mvc.html.selectextensions.listbox.aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM