/// <summary>
 /// Verifies whether collection of <see cref="INavigatable"/> objects is accessible.
 /// </summary>
 /// <typeparam name="T">Object of <see cref="INavigatable"/> type.</typeparam>
 /// <param name="item">The <see cref="INavigatable"/> object.</param>
 /// <param name="authorization">The <see cref="INavigationItemAuthorization"/> object.</param>
 /// <param name="viewContext">The <see cref="ViewContext"/> object</param>
 public static bool IsAccessible <T>(this IEnumerable <T> items, INavigationItemAuthorization authorization, ViewContext viewContext)
 {
     return(items.Any(item => authorization.IsAccessibleToUser(viewContext.RequestContext, (INavigatable)item)));
 }
 /// <summary>
 /// Verify whether the <see cref="INavigatable"/> object is accessible.
 /// </summary>
 /// <param name="item">The <see cref="INavigatable"/> object.</param>
 /// <param name="authorization">The <see cref="INavigationItemAuthorization"/> object.</param>
 /// <param name="viewContext">The <see cref="ViewContext"/> object</param>
 public static bool IsAccessible(this INavigatable item, INavigationItemAuthorization authorization, ViewContext viewContext)
 {
     return(authorization.IsAccessibleToUser(viewContext.RequestContext, item));
 }