public Sequence(CazyItem item) { this.Organism = item.Organism; this.Name = item.ProteinName; this.FastaUrl = item.UniprotUrl; this.FastaProtein = item.FastaProtein; this.Lineage = item.Lineage; }
public CazyItem GetItemFromSequence() { CazyItem item = new CazyItem(); item.Lineage = this.Lineage; item.UniprotUrl = this.FastaUrl; item.Organism = this.Organism; item.ProteinName = this.Name; return(item); }
private void GetFastaFormat(CazyItem item) { try { item.FastaProtein = webClient.DownloadString(uniprotLink + item.UniprotUrl + ".fasta"); } catch (Exception e) { item.FastaProtein = null; } }
private void RecItem(HtmlNode node) { CazyItem item = new CazyItem(); if (node.Name == "tr") { int index = 0; foreach (var n in node.ChildNodes.Where(x => x.Name != "#text")) { if (n.Name == "td") { switch (index) { case 0: item.ProteinName = n.InnerText.Replace(" ", ""); break; case 2: item.Organism = ParseOrganismName(n.InnerText); break; case 4: item.UniprotUrl = n.InnerText.Replace(" ", ""); break; } index++; } } if (!String.IsNullOrEmpty(item.UniprotUrl)) { if (!items.Select(x => x.ProteinName).Contains(item.ProteinName) && !items.Select(x => x.Organism).Contains(item.Organism)) { if (!String.IsNullOrEmpty(Pattern)) { GetFastaFormat(item); GetLineage(item); if (item.ProteinName.ToUpper().Contains(Pattern.ToUpper())) { if (item.FastaProtein != null) { items.Add(item); } } } else { GetFastaFormat(item); GetLineage(item); if (item.FastaProtein != null) { items.Add(item); } } } } } }
private void GetLineage(CazyItem item) { try { string json = webClient.DownloadString(taxonomyLink + item.Organism); if (json != "No results.") { dynamic jsonDynamic = JsonConvert.DeserializeObject <dynamic>(json); string lineage = jsonDynamic[0].lineage; string[] lineageSplit = lineage.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); if (lineageSplit != null && lineageSplit.Any()) { item.Lineage = lineageSplit.Select(x => x.Replace(" ", "")).Where(x => !String.IsNullOrEmpty(x)).ToList(); } } } catch (Exception e) { } }