Click here to Skip to main content
15,885,366 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
hi i have created models CLinicTypes and ClinicDetails like this

C#
public class ClinicTypes
    {
        public int ID { get; set; }
        public string Title { get; set; }

      public SelectList ClinicTypeList { get; set; }

    }


C#
public class ClinicDetails
    {
        public int ID { get; set; }

        [Display(Name = "Clinic Name")]
        public string ClinicName { get; set; }

        [Display(Name = "Clinic Type")]
        public int ClinicTypeID { get; set; }
        public string CPersonName{ get; set; }
        public string CPersonEmail { get; set; }
        public string CPersonMobile { get; set; }
        public string CPersonPhone { get; set; }

    }


i created my viewmodel like this

XML
public class ClinicDetailViewModel
   {

       private OMCareContext db = new OMCareContext();
       public IEnumerable<SelectListItem> ClinicTypes { get; set; }
       public ClinicDetails ClinicDetail { get; set; }


       //constructor
       public ClinicDetailViewModel(ClinicDetails detail)
       {
           ClinicDetail = detail;
           ClinicTypes = PopulateClinicTypes();
       }
       //end constructor
       private IEnumerable<SelectListItem> PopulateClinicTypes()
       {
           var cTypesQuery = db.ClinicType.OrderBy(t => t.ID);
           return new SelectList(cTypesQuery, "ID", "Title");
       }



i changed my controller post method

SQL
public ActionResult Create([Bind(Include = "ID,ClinicName,ClinicTypeID,CPersonName,CPersonEmail,CPersonMobile,CPersonPhone")] ClinicDetails clinicDetails)
                {
                    if (ModelState.IsValid)
                    {

                        db.ClinicDetail.Add(clinicDetails);
                        db.SaveChanges();
                        return RedirectToAction("Index");
                    }

           // return View(clinicDetails);commented by me and added follow line
           return View( new ClinicDetailViewModel(clinicDetails));
                }


and my view is
SQL
@Html.DropDownListFor(model => model.ClinicDetail.ClinicTypeID,Model.ClinicTypes, "--Select a tyre type--")
                @Html.ValidationMessageFor(model => model.ClinicDetail.ClinicTypeID)



it is populating dropdown list but it is saving nullvalues for clinicdetails entities and 0 for clinictypeid.

i need help in this.
Thanks
Posted
Updated 23-Aug-15 0:56am
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900