public List<SearchMetadataNode> GetMetadataNodes()
{
if (_metadataNodes.Count > 0)
return _metadataNodes;
else
{
MetadataStructureManager metadataStructureManager = new MetadataStructureManager();
List<long> ids = new List<long>();
ids = metadataStructureManager.Repo.Query().Select(p => p.Id).ToList();
foreach (long id in ids)
{
_metadataNodes.AddRange(GetAllXPathsOfSimpleAttributes(id));
}
_metadataNodes = _metadataNodes.Distinct().ToList();
_metadataNodes.Sort((x,y)=>String.Compare(x.DisplayName,y.DisplayName));
return _metadataNodes;
}
}