title: Save/Update Data into multiple tables using ASP.NET MVC 4
body: <p>Can somebody help me on how to save and update data into multiple entities using a ViewModel?</p>
  
  <p>I have a ViewModel that looks like this:</p>
  
  <pre><code>  public class StudentViewModel
    {
      public Student student;
      public StudentAddress studentAddress { get; set; }
      public StudentPhoto studentPhoto { get; set; }
      // Three entities are related to one to one relationship
  
      public DoctorDetailsViewModel()
      { }
  
      }
  </code></pre>
  
  <p>My Controller is:</p>
  
  <pre><code>  [HttpPost]
      public ActionResult Create(StudentViewModel studentViewModel)
      {
          if (ModelState.IsValid)
          {
              return View(studentViewModel);
          }
  
              Student s = new Student()
               {
                   Name =studentViewModel.Student.Name,
                   Speciality = studentViewModel.Student.Speciality,
                   DateOfJoinig = studentViewModel.Student.DateOfJoinig,
                   Qualification = studentViewModel.Student.Qualification,
                   Email = studentViewModel.Student.Email
  
               };
  
              StudentAddress sa = new StudentAddress()
              {
                  StudentId= studentViewModel.Student.StudentId,
                  Address = studentViewModel.StudentAddress.Address,
                  Area = studentViewModell.StudentAddress.Area,
                  City = studentViewModel.StudentAddress.City,
                  State = studentViewModel.StudentAddress.State,
                  Pincode = studentViewModel.StudentAddress.Pincode,
                  Phone = studentViewModel.StudentAddress.Phone,
                  Mobile = studentViewModel.StudentAddress.Mobile
  
              };
  
              StudentPhoto sp = new StudentPhoto()
              {
                  StudentId= studentViewModel.Student.StudentId,
                  Photo = studentViewModel.StudentPhoto.Photo
  
              };    
              db.Students.Add(s);
              db.StudentAddress.Add(sa);
              db.StudentPhoto.Add(sp);
  
              db.SaveChanges();
              return RedirectToAction("Home");
      }
  </code></pre>
  
  <p>I was able to retrieve and display the data (from multiple entities) into the view. However, now I'm stuck on how can I save and update the above entities with the new data. Most of the examples are 1-1 relationship the mapping is automatic, but in this case the data belongs to multiple entities.</p>
  
  <p>What is the best way to do this? Thanks.</p>