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

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

کاربر سایت

ali

عضویت از 1392/03/25

ثبت اطلاعات کاربر برای جداول user و role با ارتباط چند به چند

  • جمعه 19 شهریور 1395
  • 17:42
تشکر میکنم

مهندس در این رابطه ازتون کمک می خواستم :

در پروژه من جداول Role  و User ارتباط چند به چند دارند که به روش code first در mvc پیاده سازی شده اند :

public class User

    {

        public User()

        {

            this.Roles = new HashSet<Role>();

        }

        [Key]

        public int UserID { get; set; }

        [Display(Name = "نام کاربری")]

        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]

        [MinLength(6,ErrorMessage ="حداقل کاراکترها 6 رقم می باشد")]

        public string UserName { get; set; }

        [Display(Name = "نام")]

        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]

        public string UserFName { get; set; }

        [Display(Name = "نام خانوادگی")]

        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]

        public string UserLName { get; set; }

        [Display(Name = "رمز عبور")]

        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]

        [MinLength(6, ErrorMessage = "حداقل تعداد باید شش رقم باشد")]

        public string UserPassword { get; set; }

       public virtual ICollection<Role> Roles { get; set; }

    }

 

public class Role

    {

        public Role()

        {

            this.Users =new  HashSet<User>();

        }

        [Key]

        public int RoleID { get; set; }

        [Display(Name = "نام نقش")]

        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]

        public string RoleName { get; set; }

        [Display(Name = "عنوان نقش")]

        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]

        public string RoleTitle { get; set; }

        public virtual ICollection<User> Users { get; set; }

 

    }

حالا می خوام در هنگام ثبت نام کاربر توسط admin لیستی از نقش ها موجود در یک checkbox list نمایش داده بشه که تعدادی از اونها قابل انتخاب باشند و بعد از تکمیل شدن اطلاعات لازم برای کاربر و post کردن اطلاعات، انها همراه نقشهای کاربر ثبت بشند.

لیست نقش ها رو با این شکل در کنترلر تونستم بسازم و در view مربوطه استفاده کنم :

IEnumerable<SelectListItem> list = new SelectList(db.Roles, "RoleID", "RoleTitle");

ViewBag.RoleID = list;

در view  هم به این شکل ازش استفاده کردم

@Html.DropDownList("RoleID")

ولی در هنگام ارسال اطلاعات با همچین خطایی مواجه می شم.

خیلی ممنون می شم راهنماییم کنید.

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

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

ایمان مدائنی

عضویت از 1392/01/20

  • شنبه 20 شهریور 1395
  • 09:31

باید لیست نقش هارا در یک CheckBoxList نمایش بدید تا قالیت چند انتخاب را دارا باشد

ثبت CheckBoxListFor و دریافت مقادیر انتخاب شده در کنترلر MVC

ساخت CheckBoxList در MVC

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

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

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

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