/// <summary> /// 填充map基本属性 /// </summary> /// <param name="ormObject"></param> /// <param name="property"></param> /// <param name="node"></param> protected virtual void FillOrmPropertyMapKeyByXmlNode(OrmObjectInfo ormObject, OrmPropertyInfo property, XmlNode node) { if (node == null || node.Attributes == null) { return; } property.Map.ObjectProperty = ormObject.GetPropertyInfo(node.Attributes["ObjectProperty"].Value); property.Map.MapObjectProperty = property.Map.GetMapObject().GetPropertyInfo(node.Attributes["MapObjectProperty"].Value); }
/// <summary> /// 得到最近的一个属性 /// </summary> /// <param name="chainProperties"></param> /// <param name="orm"></param> /// <param name="propertyName"></param> /// <returns></returns> protected virtual string AddNearProperty(IList <OrmPropertyInfo> chainProperties, OrmObjectInfo orm, string propertyName) { var p = orm.GetPropertyInfo(propertyName); if (p != null) { chainProperties.Add(p); return(null); } var index = propertyName.IndexOf('.'); if (index == -1) { return(null); } p = orm.GetPropertyInfo(propertyName.Substring(0, index)); if (p != null) { chainProperties.Add(p); } return(propertyName.Substring(index + 1, propertyName.Length - 1 - index)); }