Exemple #1
0
		private void WriteTypeHierarchy(XmlWriter writer, TypeHierarchy derivedTypes, Type type)
		{
			writer.WriteStartElement("hierarchyType");
			writer.WriteAttributeString("id", MemberID.GetMemberID(type));
			writer.WriteAttributeString("displayName", MemberDisplayName.GetMemberDisplayName(type));
			writer.WriteAttributeString("namespace", type.Namespace);
			ArrayList interfaces = baseInterfaces.GetDerivedTypes(type);
			if (interfaces.Count > 0)
			{
				writer.WriteStartElement("hierarchyInterfaces");
				foreach (Type baseInterfaceType in interfaces)
				{
					writer.WriteStartElement("hierarchyInterface");
					writer.WriteAttributeString("id", MemberID.GetMemberID(baseInterfaceType));
					writer.WriteAttributeString("displayName", MemberDisplayName.GetMemberDisplayName(baseInterfaceType));
					writer.WriteAttributeString("namespace", baseInterfaceType.Namespace);
					writer.WriteAttributeString("fullName", baseInterfaceType.FullName);
					writer.WriteEndElement();
				}
				writer.WriteEndElement();
			}
			ArrayList childTypesList = derivedTypes.GetDerivedTypes(type);
			foreach (Type childType in childTypesList)
			{
				WriteTypeHierarchy(writer, derivedTypes, childType);
			}
			writer.WriteEndElement();
		}