AW.Webapi.Sample.Areas.HelpPage.HelpPageConfigurationExtensions.GetHelpPageApiModel C# (CSharp) Method

GetHelpPageApiModel() public static method

Gets the model that represents an API displayed on the help page. The model is initialized on the first call and cached for subsequent calls.
public static GetHelpPageApiModel ( this config, string apiDescriptionId ) : HelpPageApiModel
config this The .
apiDescriptionId string The ID.
return AW.Webapi.Sample.Areas.HelpPage.Models.HelpPageApiModel
        public static HelpPageApiModel GetHelpPageApiModel(this HttpConfiguration config, string apiDescriptionId)
        {
            object model;
            string modelId = ApiModelPrefix + apiDescriptionId;
            if (!config.Properties.TryGetValue(modelId, out model))
            {
                Collection<ApiDescription> apiDescriptions = config.Services.GetApiExplorer().ApiDescriptions;
                ApiDescription apiDescription = apiDescriptions.FirstOrDefault(api => String.Equals(api.GetFriendlyId(), apiDescriptionId, StringComparison.OrdinalIgnoreCase));
                if (apiDescription != null)
                {
                    model = GenerateApiModel(apiDescription, config);
                    config.Properties.TryAdd(modelId, model);
                }
            }

            return (HelpPageApiModel)model;
        }