مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

منال مجموعه

عضویت از 1393/10/21

چگونه اطلاعات چک باکس لیست انتخابی کاربر را نمایش دهیم (از دیتابیس)

  • پنجشنبه 8 شهریور 1397
  • 10:44
تشکر میکنم

سلام.وقت بخیر

نیاز دارم که اطلاعات انتخابی کاربر را به صورت چک باکس لیست که موارد ثبت شده کاربر تیک خورده باشتد رو نمایش بدم

ثبت اطلاعات رو انجام دادم با ساختار زیر:

کد مربوط به مدلم

    public IList<int> SelectedRoles { get; set; }
        public IList<SelectListItem> AvailableRoles { get; set; }

        public RoleModel()
        {
            SelectedRoles = new List<int>();

            AvailableRoles = new List<SelectListItem>();
        }

کد مربوط به کنترلر:

   private IList<SelectListItem> Get_Roles()
        {

            var query = from m in db.Roles

                select new {m};
            var Rlist = new List<SelectListItem>();

            foreach (var item in query)
            {
                Rlist.Add(new SelectListItem()
                {
                    Value = item.m.RoleID.ToString(),
                    Text = item.m.RoleName,

                });

            }

            return Rlist;
        }






      public ActionResult UserRoles(long? id)

        {

            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }

            var CurrentPerson = (from Person in db.LeagueGame
                join User in db.Users on Person.PersonID equals User.PersonID
                where User.UserID == id
                select Person).FirstOrDefault();

            ViewBag.UserID = id;
            ViewBag.PersonLastName = CurrentPerson.LastName;
            ViewBag.PersonFirstName = CurrentPerson.FirstName;



            var model = new RoleModel

            {
                AvailableRoles = Get_Roles()
            };

            return View(model);
}

و کد در ویو::::

 <div class="col-md-6"  style="background-color: azure">


                                                                    @foreach (var item in Model.AvailableRoles)
                                                                    {
                                                                        <div class="checkbox" align="right">
                                                                            <label style="padding-right: 1px" class="checkbox-inline">
                                                                                <input type="checkbox"  dir="ltr" 
                                                                                       name="SelectedRoles"
                                                                                       value="@item.Value"/> @item.Text
                                                                            </label>
                                                                        </div>
                                                                    }

                                                               
                                                                </div>

و اکشن مربوط به ثبت 

  [HttpPost]
        public ActionResult UserRoles(RoleModel model, long? id)
        {
            if (ModelState.IsValid)
            {
                var Roles = string.Join(",", model.SelectedRoles);

                if (ModelState.IsValid)
                {

                    if (model.StartDate != null)
                    {
                        model.StartDate = model.StartDate.Value.ToMiladiDate();

                    }
                    else
                    {
                        model.StartDate = DateTime.Now;
                    }


                    if (model.EndDate != null)
                    {
                        model.EndDate = model.EndDate.Value.ToMiladiDate();


                    }
                    else
                    {
                        model.EndDate = DateTime.Now;
                    }

                    try
                    {

                        db.Insert_UsersRoles(id, Roles, model.StartDate, model.EndDate);


                        TempData["successMessageForDeleting"] = "عملیات ثبت با موفقیت انجام شد.";


                        return RedirectToAction("Index");


                    }

                    catch (Exception)
                    {
                        TempData["ErrorMessageForDeleting"] = "عملیات ثبت با خطا مواجه شد.";
                        return RedirectToAction("Index");
                    }
                }

                var CurrentPerson = (from Person in db.LeagueGame
                    join User in db.Users on Person.PersonID equals User.PersonID
                    where User.UserID == id
                    select Person).FirstOrDefault();

                ViewBag.UserID = id;
                ViewBag.PersonLastName = CurrentPerson.LastName;
                ViewBag.PersonFirstName = CurrentPerson.FirstName;
                model.AvailableRoles = Get_Roles();

            }
            else
            {

                TempData["ErrorMessageForDeleting"] = "عملیات ثبت با خطا مواجه شد.";
            }

            return View("Index");
        }

میشه کمکم کنین.  خیلی روش امتحان کردم نتیجه نگرفتم

پاسخ های این پرسش

تعداد پاسخ ها : 1 پاسخ
کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)