Podejście code first asp.net mvc mam 3 modele, które pózniej mapowane są na tabele w bazie danych.
Pytanie czy do widoku create (odpowiedzialnego za zlozenie rezerwacji) należy przekazac wlasny ViewModel? Chodzi o to, bo nie wiem jak te pola odpowiedzialne za zameldowanie, wymeldowanie w tabeli pośredniej mam uwzglednic w widoku, a nastepnie przekazac do kontrolera. Na dodatek chciałbym, by w formularzu po kliknieciu w te pola wyskakiwal kalendarz.

    public class Rezerwacja
    {
        public Rezerwacja()
        {
            this.Pokoj= new HashSet<RezerwacjaPokoj>();
        }
        //[Display(Name = "Nr rezerwacji")]
        [Key]
        public int ID { get; set; }

        [Display(Name = "Numer pokoju")]
        public int PokojID{ get; set; } // Co z tym polem?
        public virtual ICollection<RezerwacjaPokoj> Pokoj{ get; set; }
     }


    public class Pokoj
    {

        public Pokoj()
        {
            this.Rezerwacja = new HashSet<RezerwacjaPokoj>();
        }
        [Key]
        [Display(Name = "Numer pokoju ")]
        public int ID { get; set; }
        public int Numer { get; set; }
        public string Status { get; set; }

        public virtual ICollection<RezerwacjaPokoj> Rezerwacja{ get; set; } 


    }


    public class RezerwacjaPokoj
    {

        [Key]
        public int ID { get; set; }

        public int RezerwacjaID{ get; set; }
        public int PokojID{ get; set; }
        public virtual Rezerwacja Rezerwacja { get; set; }
        public virtual Pokoj Pokoj{ get; set; }

        [DataType(DataType.Date)]
        [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
        public DateTime Data_zam{ get; set; }

        [DataType(DataType.Date)]
        [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
        public DateTime Data_wym{ get; set; }

    }