/// <summary>
 /// Executes the on navigation end actions.
 /// </summary>
 /// <param name="link">The link.</param>
 internal void ExecuteOnNavigationEndActions(ODataNavigationLink link)
 {
     Debug.Assert(link != null, "link != null");
     if (this.readingEndNavigationLinkActions.Count > 0)
     {
         ReadingNavigationLinkArgs args = new ReadingNavigationLinkArgs(link);
         foreach (Action <ReadingNavigationLinkArgs> navAction in this.readingEndNavigationLinkActions)
         {
             navAction(args);
         }
     }
 }
        /// <summary>
        /// Executes the on navigation start actions.
        /// </summary>
        /// <param name="link">The link.</param>
        internal void ExecuteOnNavigationStartActions(ODataNavigationLink link)
        {
            Debug.Assert(link != null, "link != null");

            if (this.readingStartNavigationLinkActions.Count > 0)
            {
                ReadingNavigationLinkArgs args = new ReadingNavigationLinkArgs(link);
                foreach (Action<ReadingNavigationLinkArgs> navAction in this.readingStartNavigationLinkActions)
                {
                    navAction(args);
                }
            }
        }