/// <summary> /// 从XML节点获取数据定义 /// </summary> /// <param name="element"></param> /// <returns></returns> private ParamDef GetParamDefFromElement(XElement element) { ParamDef param = new ParamDef(); System.Diagnostics.Debug.Assert(element != null); param.ObjectBrief = element.Attributes("ObjectBrief").FirstOrDefault().Value; param.ObjectName = element.Attributes("ObjectName").FirstOrDefault().Value; param.ObjectRemark = element.Attributes("ObjectRemark").FirstOrDefault().Value; param.TypeName = element.Attributes("TypeName").FirstOrDefault().Value; param.TypeSort = element.Attributes("TypeSort").FirstOrDefault().Value; IEnumerable <XElement> subElements = element.Elements("PropertyObject"); PropertyObject p = null; if (subElements != null && subElements.Count() > 0) { param.properties = new List <PropertyObject>(); foreach (XElement elm in subElements) { p = new PropertyObject(); p.ObjectBrief = elm.Attributes("ObjectBrief").FirstOrDefault().Value; p.ObjectName = elm.Attributes("ObjectName").FirstOrDefault().Value; p.ObjectRemark = elm.Attributes("ObjectRemark").FirstOrDefault().Value; p.TypeName = elm.Attributes("TypeName").FirstOrDefault().Value; //p.TypeSort = element.Attributes("TypeSort").FirstOrDefault().Value; param.properties.Add(p); } } return(param); }
/// <summary> /// 读取数据定义的属性信息 /// </summary> /// <param name="element"></param> /// <param name="typeSort"></param> /// <returns></returns> private PropertyObject GetPropertyObjectFromElement(XElement element, string typeSort) { PropertyObject property = new PropertyObject(); property.ObjectBrief = element.Attributes("ObjectBrief").FirstOrDefault().Value; property.ObjectName = element.Attributes("ObjectName").FirstOrDefault().Value; property.ObjectRemark = element.Attributes("ObjectRemark").FirstOrDefault().Value; property.TypeName = element.Attributes("TypeName").FirstOrDefault().Value; property.TypeSort = typeSort; return(property); }
/// <summary> /// 读取单个数据定义信息 /// </summary> /// <param name="element"></param> /// <returns></returns> private DataObject GetDataObjectFromElement(XElement element) { DataObject dataObject = new DataObject(); dataObject.ObjectBrief = element.Attributes("ObjectBrief").FirstOrDefault().Value; dataObject.ObjectName = element.Attributes("ObjectName").FirstOrDefault().Value; dataObject.ObjectRemark = element.Attributes("ObjectRemark").FirstOrDefault().Value; dataObject.TypeName = element.Attributes("TypeName").FirstOrDefault().Value; dataObject.TypeSort = element.Attributes("TypeSort").FirstOrDefault().Value; dataObject.properties = new List <PropertyObject>(); IEnumerable <XElement> propertyElements = element.Elements("PropertyObject"); if (propertyElements != null) { foreach (var propertyElement in propertyElements) { PropertyObject property = GetPropertyObjectFromElement(propertyElement, dataObject.TypeSort); dataObject.properties.Add(property); } } return(dataObject); }