Esempio n. 1
0
        /// <summary>
        /// Returns the HATEOAS registrations for a specific model. Returns a (registered) empty list when the model could not be found.
        /// </summary>
        /// <param name="configuration">HTTP configuration</param>
        /// <param name="model">The model to get HATEOAS registrations for</param>
        /// <param name="isCollection"></param>
        /// <returns>HATEOAS registrations for the model specified</returns>
        public static List <IHateoasRegistration> GetRegistrationsFor(this IHttpConfiguration configuration, Type model)
        {
            var linkedResourceDefinitions = configuration.GetRegistrations();
            List <IHateoasRegistration> definitions;

            if (linkedResourceDefinitions.TryGetValue(model, out definitions))
            {
                return(definitions);
            }

            definitions = new List <IHateoasRegistration>();
            linkedResourceDefinitions.Add(model, definitions);

            return(definitions);
        }