گاهی نیاز هست در بین propertyهای modelهای مختلفی که از یک مدل base ارث بری کرده اند، جستجویی را انجام دهیم؛ همانند مدل زیر:
#region my model [KnownType(typeof(model1))] [KnownType(typeof(model2))] [KnownType(typeof(model3))] public class TaskGroupObjects : List<IBaseObject> { #region sortFields class compare : IComparer<IBaseObject> { public int Compare(IBaseObjectfield1, IBaseObjectfield2) { return field1.Order - field2.Order; } } public void sortByOrder() { Sort(new compare()); } #endregion }
public static bool HasProperty(this object your model, string propertyName) { return obj.GetType().GetProperty(propertyName) != null; }