/// <summary>
 /// Die Werte für die Binding des Models an die Session schreiben.
 /// </summary>
 /// <param name="controllerContext"></param>
 /// <param name="bindingContext"></param>
 public static void WritePropertyValuesToSession(ControllerContext controllerContext, ModelBindingContext bindingContext)
 {
     if (controllerContext.HttpContext.Session != null)
     {
         SessionValueProvider sessionValueProvider = SessionValueProvider.FromBindingContext(bindingContext);
         SessionPersister.WriteToSession(controllerContext.HttpContext.Session, sessionValueProvider);
     }
 }
        /// <summary>
        /// Erzeugt einen ValueProvider aus der Session für den übergebenen BindingContext.
        ///
        /// Anwendungsfall:
        /// Die Werte sollen aus der Session gelesen werden.
        /// </summary>
        /// <param name="session"></param>
        /// <param name="bindingContext"></param>
        /// <returns></returns>
        public static SessionValueProvider FromSession(HttpSessionStateBase session, ModelBindingContext bindingContext)
        {
            Require.NotNull(bindingContext, "bindingContext");

            return(SessionPersister.ReadFromSession(session, bindingContext));
        }