PropertyClassLookups.cs 635 B

1234567891011121314151617
  1. using System.Linq;
  2. using InABox.Clients;
  3. namespace InABox.Core
  4. {
  5. public class PropertyClassLookups : LookupGenerator<object>
  6. {
  7. public PropertyClassLookups(object[] items) : base(items)
  8. {
  9. var classes = CoreUtils.Entities.Where(x => x.IsSubclassOf(typeof(Entity)) && x.GetInterfaces().Contains(typeof(IPersistent)))
  10. .OrderBy(x => x.EntityName().Split('.').Last()).ToArray();
  11. foreach (var entity in classes)
  12. if (ClientFactory.IsSupported(entity))
  13. AddValue(entity.EntityName(), entity.EntityName().Split('.').Last());
  14. }
  15. }
  16. }