Stephen2

Multisite - GetImages

Mar 1st, 2014
637
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.79 KB | None | 0 0
  1. List<Image> GetImages(Expression<Func<Image, bool>> whereClause) {
  2.     var allImages = new List<Image>();
  3.  
  4.     //Get all provider names for the site
  5.     var providerNames = SystemManager.CurrentContext.CurrentSite.SiteDataSourceLinks
  6.         .Where(o => o.DataSourceName == typeof(LibrariesManager).FullName)
  7.         .Select(o => o.ProviderName);
  8.  
  9.     //Loop them, passing the whereClause to each
  10.     foreach (var providerName in providerNames) {
  11.         var providerImages = LibrariesManager.GetManager(providerName).GetImages();
  12.  
  13.         //Apply only if provided
  14.         if (whereClause != null) {
  15.             providerImages = providerImages.Where(whereClause);
  16.         }
  17.  
  18.         //Add to the list
  19.         allImages.AddRange(providerImages);
  20.     }
  21.  
  22.     //Done
  23.     return allImages;
  24. }
Advertisement
Add Comment
Please, Sign In to add comment