Beispiel #1
0
    /// <summary>
    /// 查找当前节点下所有 FeatureGroup 并添加到列表中
    /// </summary>
    /// <param name="featureGroupsNode">FeatureGroups 节点</param>
    /// <param name="featureGroups">保存 FeatureGroup 的字典</param>
    private static void GetFeatureGroups(XmlNode featureGroupsNode, Dictionary <string, GDTF_AttributeDefinitionsData_FeatureGroup> featureGroups)
    {
        // 查找 FeatureGroup 节点
        foreach (XmlNode featureGroupNode in featureGroupsNode)
        {
            // 如果存在子节点
            if (featureGroupNode.HasChildNodes)
            {
                GDTF_AttributeDefinitionsData_FeatureGroup featureGroup = new GDTF_AttributeDefinitionsData_FeatureGroup();

                string featureGroupName = GetNodeAttribute(featureGroupNode, "Name");
                if (featureGroupName != null)
                {
                    featureGroup.featureGroupName = featureGroupName;
                    if (featureGroupNode.HasChildNodes)
                    {
                        // 在当前 FeatureGroup 下添加 Feature
                        GetFeatures(featureGroupNode, featureGroup);
                    }

                    featureGroups[featureGroupName] = featureGroup;
                }
            }
        }
    }
Beispiel #2
0
    /// <summary>
    /// 查找当前节点下所有 Feature 并添加到 FeatureGroup 对象中
    /// </summary>
    /// <param name="featureGroupNode">FeatureGroup 节点</param>
    /// <param name="featureGroup">FeatureGroup 对象</param>
    private static void GetFeatures(XmlNode featureGroupNode, GDTF_AttributeDefinitionsData_FeatureGroup featureGroup)
    {
        Dictionary <string, GDTF_AttributeDefinitionsData_Feature> features = new Dictionary <string, GDTF_AttributeDefinitionsData_Feature>();

        foreach (XmlNode featureNode in featureGroupNode)
        {
            string featureName = GetNodeAttribute(featureNode, "Name");
            if (featureName != null)
            {
                GDTF_AttributeDefinitionsData_Feature feature = new GDTF_AttributeDefinitionsData_Feature()
                {
                    fatureName = featureName
                };
                features[featureName] = feature;
            }
        }

        featureGroup.features = features;
    }