/// <summary>
        /// Retrieve services from api defined in the api domain.
        /// </summary>
        /// <param name="apis">A list of api.</param>
        /// <param name="layoutActions">A list of layout actions</param>
        public List <string> getApiDomainServices(ApiList apis, LayoutInfo layout)
        {
            List <string> result = new List <string>();

            if (layout != null && layout.Actions.AsEnumerable() != null)
            {
                foreach (ActionInfo action in layout.Actions.AsEnumerable())
                {
                    if (action.Type != null && action.Api != null && IsDataAction(action.Type))
                    {
                        char     delimiter      = '.';
                        string[] actionSplitted = action.Api.Split(delimiter);
                        string   apiService     = actionSplitted[0];

                        foreach (ApiInfo api in apis.AsEnumerable())
                        {
                            if (api.Id.ToLower().Equals(apiService.ToLower()) && !result.AsEnumerable().Contains(TextConverter.PascalCase(apiService)))
                            {
                                result.Add(TextConverter.PascalCase(apiService));
                            }
                        }
                    }
                }
            }
            return(result);
        }
        /// <summary>
        /// Retrieve viewModels from api actions.
        /// </summary>
        /// <param name="apis">A list of api.</param>
        /// <param name="layoutActions">A list of layout actions.</param>
        /// <returns></returns>
        public void getApiViewModels(ApiList apis, ActionList layoutActions)
        {
            if (layoutActions.AsEnumerable() != null)
            {
                foreach (ActionInfo action in layoutActions.AsEnumerable())
                {
                    if (action.Type != null && action.Api != null && IsDataAction(action.Type))
                    {
                        char     delimiter      = '.';
                        string[] actionSplitted = action.Api.Split(delimiter);
                        string   apiAction      = actionSplitted[1];

                        foreach (ApiInfo api in apis.AsEnumerable())
                        {
                            if (api.Actions.AsEnumerable() != null)
                            {
                                getApiActionViewModels(apiAction, api.Actions);
                            }
                        }
                    }
                }
            }
        }