Пример #1
0
        public string GetDefinition(string taxonomy, string elementID)
        {
            taxonomy = Path.GetFileName(taxonomy);

            if (!this.Taxonomies.ContainsKey(taxonomy))
            {
                return(string.Empty);
            }

            if (!definitionCache.ContainsKey(this.Language))
            {
                definitionCache[this.Language] = new Dictionary <string, Dictionary <string, string> >();
            }

            if (!definitionCache[this.Language].ContainsKey(taxonomy))
            {
                string basePath = Path.Combine(GetBasePath(), DefinitionPath);
                Dictionary <string, string> tmp = definitionCache[this.Language][taxonomy] = new Dictionary <string, string>();
                foreach (string definitionFile in this.Taxonomies[taxonomy].DefinitionFiles)
                {
                    string err;
                    string file = Path.Combine(basePath, definitionFile);
                    if (!Taxonomy.TryGetDocumentationInformation(this.Language, file, ref tmp, out err))
                    {
                    }
                }
            }

            if (definitionCache[this.Language][taxonomy].ContainsKey(elementID))
            {
                return(definitionCache[this.Language][taxonomy][elementID]);
            }

            return(string.Empty);
        }