public int GetFieldCount() { try { IReflectClass rClass = DataLayerCommon.ReflectClassForName(m_className); if (rClass != null) { string type1 = rClass.ToString(); type1 = DataLayerCommon.PrimitiveType(type1); char[] arr = CommonValues.charArray; type1 = type1.Trim(arr); if (!CommonValues.IsPrimitive(type1) && !type1.Contains(BusinessConstants.DB4OBJECTS_SYS)) { IReflectField[] rFields = DataLayerCommon.GetDeclaredFieldsInHeirarchy(rClass); return(rFields.Length); } } return(0); } catch (Exception oEx) { LoggingHelper.HandleException(oEx); return(0); } }
public void TraverseObjTree(ref TreeGridNode rootNode, object currObj, string classname) { container = Db4oClient.Client; IReflectClass refClass = DataLayerCommon.ReflectClassForName(classname); if (refClass == null) { return; } string type1 = refClass.ToString(); if (!String.IsNullOrEmpty(type1)) { try { IType type = Db4oClient.TypeResolver.Resolve(refClass); if (type.IsPrimitive) { TreeGridNode node = new TreeGridNode(); rootNode.Nodes.Add(node); node.Cells[0].Value = ClassNameFor(container.Ext().Reflector().ForObject(currObj).GetName()); node.Cells[1].Value = currObj.ToString(); node.Cells[1].ReadOnly = checkReadonlyStatus(); SetFieldType(node, type); node.Tag = currObj; node.ImageIndex = 2; return; } IReflectField[] fieldArr = DataLayerCommon.GetDeclaredFieldsInHeirarchy(refClass); rootNode = TraverseFields(rootNode, currObj, fieldArr); } catch (Exception oEx) { LoggingHelper.HandleException(oEx); } } }