SenseNet.ContentRepository.Storage.Schema.SchemaRoot.BuildDataSetFromXml C# (CSharp) Метод

BuildDataSetFromXml() статический приватный Метод

static private BuildDataSetFromXml ( XmlDocument schemaXml ) : DataSet
schemaXml System.Xml.XmlDocument
Результат System.Data.DataSet
		internal static DataSet BuildDataSetFromXml(XmlDocument schemaXml)
		{
			Dictionary<string, int> dataTypes = new Dictionary<string, int>();
			dataTypes.Add("String", 1);
			dataTypes.Add("Text", 2);
			dataTypes.Add("Int", 3);
			dataTypes.Add("Currency", 4);
			dataTypes.Add("DateTime", 5);
			dataTypes.Add("Binary", 6);
			dataTypes.Add("Reference", 7);

			Dictionary<PropertySetType, int> propertySetTypes = new Dictionary<PropertySetType, int>();
			propertySetTypes.Add(PropertySetType.NodeType, 1);
            propertySetTypes.Add(PropertySetType.ContentListType, 2);

			DataSet dataSet = CreateDataSet(dataTypes, propertySetTypes);

			XmlNamespaceManager nsmgr = new XmlNamespaceManager(schemaXml.NameTable);
			nsmgr.AddNamespace("x", RepositoryStorageSchemaXmlNamespace);

			foreach (XmlNode node in schemaXml.DocumentElement.SelectNodes("x:UsedPropertyTypes/x:PropertyType", nsmgr))
				BuildPropertyTypeRow(node, dataSet.Tables["PropertyTypes"], dataTypes);
			foreach (XmlNode node in schemaXml.DocumentElement.SelectNodes("x:NodeTypeHierarchy/x:NodeType", nsmgr))
				BuildNodeTypeRow(node, nsmgr, dataSet.Tables["PropertySets"], PropertySetType.NodeType, propertySetTypes);
            foreach (XmlNode node in schemaXml.DocumentElement.SelectNodes("x:ContentListTypes/x:ContentListType", nsmgr))
                BuildNodeTypeRow(node, nsmgr, dataSet.Tables["PropertySets"], PropertySetType.ContentListType, propertySetTypes);
			foreach (XmlNode node in schemaXml.DocumentElement.SelectNodes("x:PermissionTypes/x:PermissionType", nsmgr))
				BuildPermissionRow(node, dataSet.Tables["Permissions"]);

			return dataSet;
		}
		private static DataSet CreateDataSet(Dictionary<string, int> dataTypes, Dictionary<PropertySetType, int> propertySetTypes)