Unicoen.Model.UnifiedElement.XmlWriteUnifiedElement C# (CSharp) Method

XmlWriteUnifiedElement() private static method

private static XmlWriteUnifiedElement ( UnifiedElement elem, StringBuilder buffer, int depth ) : void
elem UnifiedElement
buffer System.Text.StringBuilder
depth int
return void
		private static void XmlWriteUnifiedElement(
				UnifiedElement elem, StringBuilder buffer, int depth) {
			// write items of enumerable
			var seq = elem as IEnumerable;
			if (seq != null) {
				foreach (var item in seq) {
					ToXmlRecursively(item, buffer, depth + 1);
				}
			}

			// write properties without indexer
			var values = elem.GetType().GetProperties()
					.Where(prop => !XmlIgnorePropertyNames.Contains(prop.Name))
					.Where(prop => prop.GetIndexParameters().Length == 0)
					.Select(prop => prop.GetValue(elem, null));
			foreach (var value in values) {
				ToXmlRecursively(value, buffer, depth + 1);
			}
		}