protected override ReadOnlyDictionaryNodeCollection GetNodesCollectionInternal(DictionaryNode node, string attributeName) { var collectionInternal = new DictionaryNodeCollection(); collectionInternal.AddRange(new ApplicationNodeWrapper(node.Dictionary.RootNode).Node.GetChildNode(ModuleController.Modules).ChildNodes); return collectionInternal; }
protected override ReadOnlyDictionaryNodeCollection GetNodesCollectionInternal(DictionaryNode node, string attributeName) { var allNodes = base.GetNodesCollectionInternal(node, attributeName); var result = new DictionaryNodeCollection(); var nonStringProperties = allNodes.Where(n => n.GetAttributeValue("Type").Equals(typeof(string).FullName)); foreach (var stringProperty in nonStringProperties) { result.Add(stringProperty); } return result; }
protected override ReadOnlyDictionaryNodeCollection GetNodesCollectionInternal(DictionaryNode node, string attributeName) { var result = new DictionaryNodeCollection(); DictionaryNode classesNode = node.Dictionary.RootNode.FindChildNode(BOModelNodeWrapper.NodeName); if (classesNode != null) { string typeName = parser.GetAttributeValueByPath(node, classNameAttrPath); DictionaryNode classNode = classesNode.FindChildNode(ClassInfoNodeWrapper.NameAttribute, typeName); Type type = ReflectionHelper.GetType(typeName); result.Add(classNode); foreach (DictionaryNode checkNode in classesNode.ChildNodes) { Type checkType = ReflectionHelper.GetType(checkNode.GetAttributeValue("Name")); if (checkType.IsSubclassOf(type) || type.IsSubclassOf(checkType)) { result.Add(checkNode); } } } return result; }