public override int GetHashCode()
{
int hashcode = 0;
for (int i = 0; i < this.NameHierarchy.Count; i++)
{
hashcode += NameHierarchy[i].Name.GetHashCode();
hashcode += NameHierarchy[i].PrimitiveType.PrimitiveType.GetHashCode();
}
return hashcode;
}