public List <Taxon> GetTopLevelTaxa()
        {
            List <Taxon> taxa = new List <Taxon>();

            StoredProcReaderForEach("spBiotaListTop", (reader) => {
                taxa.Add(TaxonMapper.MapTaxon(reader));
            });

            return(taxa);
        }
        public List <Taxon> GetTaxaForParent(int taxonId)
        {
            List <Taxon> taxa = new List <Taxon>();

            StoredProcReaderForEach("spBiotaList", (reader) => {
                taxa.Add(TaxonMapper.MapTaxon(reader));
            }, new SqlParameter("intParentId", taxonId));

            return(taxa);
        }
        public List <Taxon> GetExpandFullTree(int taxonId)
        {
            List <Taxon> taxa = new List <Taxon>();

            StoredProcReaderForEach("spBiotaListFullTree", (reader) => {
                taxa.Add(TaxonMapper.MapTaxon(reader, new ConvertingMapper("NumChildren", (elem) => { return(Int32.Parse(elem == null ? "-1" : elem.ToString())); })));
            }, new SqlParameter("intParentId", taxonId));

            return(taxa);
        }