Example #1
0
        /// <summary>Searches for class mappings.</summary>
        /// <param name="mappingsRepository">Repository to be queried.</param>
        /// <param name="type">Type of entity.</param>
        /// <returns>Class mapping or null.</returns>
        public static IEnumerable <Uri> FindMappedClasses(this IMappingsRepository mappingsRepository, Type type)
        {
            IEnumerable <Uri> result = new Uri[0];

            if ((mappingsRepository != null) && (type != null))
            {
                IEntityMapping entityMapping = mappingsRepository.FindEntityMapping(type);
                if (entityMapping == null)
                {
                    entityMapping = mappingsRepository.FindEntityMapping(type.FindEntityType());
                }

                if (entityMapping != null)
                {
                    result = entityMapping.Classes.OfType <IQueryableClassMapping>().SelectMany(cm => cm.Uris).Distinct(AbsoluteUriComparer.Default);
                }
            }

            return(result);
        }
Example #2
0
 /// <summary>Searches for entity mappings.</summary>
 /// <typeparam name="T">Type of entity.</typeparam>
 /// <param name="mappingsRepository">Repository to be queried.</param>
 /// <returns>Entity mapping or null.</returns>
 public static IEntityMapping FindEntityMapping <T>(this IMappingsRepository mappingsRepository) where T : IEntity
 {
     return(mappingsRepository.FindEntityMapping(typeof(T)));
 }