/// <summary> /// /// </summary> /// <returns></returns> virtual public AttributePropertyInfoPairCollection GetDeviceDataItemAttributes() { AttributePropertyInfoPairCollection result = new AttributePropertyInfoPairCollection(); PropertyInfo[] propertyInfos = this.GetType().GetProperties(); foreach (PropertyInfo pi in propertyInfos) { object[] atts = pi.GetCustomAttributes(typeof(DataItemAttribute), false); if (atts.Length > 0) { DataItemAttribute att = (DataItemAttribute)atts[0]; AttributePropertyInfoPair pair = new AttributePropertyInfoPair( att, pi); result.Add(pair); } } // sort // result.Sort(); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> public virtual AttributePropertyInfoPairCollection GetDeviceDataItemAttributes() { AttributePropertyInfoPairCollection result = new AttributePropertyInfoPairCollection(); PropertyInfo[] propertyInfos = this.GetType().GetProperties(); foreach (PropertyInfo pi in propertyInfos) { object[] atts = pi.GetCustomAttributes(typeof(DataItemAttribute), false); if (atts.Length > 0) { DataItemAttribute att = (DataItemAttribute)atts[0]; AttributePropertyInfoPair pair = new AttributePropertyInfoPair( att, pi); result.Add(pair); } } // sort // result.Sort(); return result; }