private IEnumerable <IEnumerable <string> > GetImageSets(string menuName)
 {
     foreach (var provider in _navigationProviders)
     {
         if (provider.MenuName == menuName)
         {
             var builder = new NavigationBuilder();
             IEnumerable <string> imageSets = null;
             try {
                 provider.GetNavigation(builder);
                 imageSets = builder.BuildImageSets();
             }
             catch (Exception ex) {
                 if (ex.IsFatal())
                 {
                     throw;
                 }
                 Logger.Error(ex, "Unexpected error while querying a navigation provider. It was ignored. The menu provided by the provider may not be complete.");
             }
             if (imageSets != null)
             {
                 yield return(imageSets);
             }
         }
     }
 }
 private IEnumerable <IEnumerable <string> > GetImageSets(string menuName)
 {
     foreach (var provider in _navigationProviders)
     {
         if (provider.MenuName != menuName)
         {
             continue;
         }
         var builder = new NavigationBuilder();
         IEnumerable <string> imageSets = null;
         try
         {
             provider.GetNavigation(builder);
             imageSets = builder.BuildImageSets();
         }
         catch (Exception ex)
         {
             Logger.Error(ex, "意外的错误在查询导航提供商。它被忽略。由供应商提供的菜单可能不完整。");
         }
         if (imageSets != null)
         {
             yield return(imageSets);
         }
     }
 }