public virtual ActionResult Index( )
        {
            Atlas atlas = new Atlas( );
            atlas.Continents = this._continentRepository.All;

            return View( atlas );
        }
        public virtual ActionResult SelectCountry( int? selectedContinentId , int? selectedCountryId )
        {
            var selectedContinent = selectedContinentId.HasValue
                ? this._continentRepository.Find( selectedContinentId.Value )
                : null;

            var countries = ( selectedContinent != null )
                ? selectedContinent.Countries
                : null;

            var cities = ( countries != null && selectedCountryId.HasValue )
                ? countries.Where( c => c.Id == selectedCountryId.Value ).SingleOrDefault( ).Cities
                : null;

            Atlas atlas = new Atlas
            {
                SelectedContinentId = selectedContinentId ,
                SelectedCountryId = selectedCountryId ,
                Continents = this._continentRepository.All ,
                Countries = countries ,
                Cities = cities
            };

            if ( Request.IsAjaxRequest( ) )
            {
                return PartialView( MVC.CascadingDropDownLists.DropDownAjaxPost.Views._Cities , atlas );
            }
            else
            {
                return View( MVC.CascadingDropDownLists.DropDownAjaxPost.Views.Index , atlas );
            }
        }
    public virtual ActionResult SelectCountry( int? selectedContinentId , int? selectedCountryId )
    {
        var selectedContinent = selectedContinentId.HasValue
            ? this._continentRepository.Find( selectedContinentId.Value )
            : null;

        var countries = ( selectedContinent != null )
            ? selectedContinent.Countries
            : null;

        var cities = ( countries != null && selectedCountryId.HasValue )
            ? countries.Where( c => c.Id == selectedCountryId.Value ).SingleOrDefault( ).Cities
            : null;

        Atlas atlas = new Atlas
        {
            SelectedContinentId = selectedContinentId ,
            SelectedCountryId = selectedCountryId ,
            Continents = this._continentRepository.All ,
            Countries = countries ,
            Cities = cities
        };

        this.TempData[ "atlas" ] = atlas;

        return RedirectToAction( MVC.CascadingDropDownLists.DropDownNormalPostPRG.Index( ) );
    }
    public virtual ViewResult Index( )
    {
        Atlas atlas = TempData[ "atlas" ] as Atlas;

        if ( atlas == null )
        {
            atlas = new Atlas( );
            atlas.Continents = this._continentRepository.All;
        }

        return View( MVC.CascadingDropDownLists.DropDownNormalPostPRG.Views.Index , atlas );
    }
        public virtual ActionResult SelectContinent( int? selectedContinentId )
        {
            var countries = selectedContinentId.HasValue
                ? this._continentRepository.Find( selectedContinentId.Value ).Countries
                : null;

            Atlas atlas = new Atlas
            {
                SelectedContinentId = selectedContinentId ,
                Continents = this._continentRepository.All ,
                Countries = countries
            };

            return View( MVC.CascadingDropDownLists.DropDownNormalPost.Views.Index , atlas );
        }
    public virtual ActionResult SelectContinent( int? selectedContinentId )
    {
        var countries = selectedContinentId.HasValue
            ? this._continentRepository.Find( selectedContinentId.Value ).Countries
            : null;

        Atlas atlas = new Atlas
        {
            SelectedContinentId = selectedContinentId ,
            Continents = this._continentRepository.All ,
            Countries = countries
        };

        this.TempData[ "atlas" ] = atlas;

        return RedirectToAction( MVC.CascadingDropDownLists.DropDownNormalPostPRG.Index( ) );
    }
        public virtual ActionResult SelectContinent( int? selectedContinentId )
        {
            var countries = selectedContinentId.HasValue
                ? this._continentRepository.Find( selectedContinentId.Value ).Countries
                : null;

            Atlas atlas = new Atlas
            {
                SelectedContinentId = selectedContinentId ,
                Continents = this._continentRepository.All ,
                Countries = countries
            };

            if ( Request.IsAjaxRequest( ) )
            {
                return PartialView( MVC.CascadingDropDownLists.DropDownAjaxPost.Views._Countries , atlas );
            }
            else
            {
                return View( MVC.CascadingDropDownLists.DropDownAjaxPost.Views.Index , atlas );
            }
        }