How to list all properties of an Entity

Here is a small utility method that can used to get the list of properties of any Entity

private IList<PropertyInfo> ListProperties<T>(T t)
        {
            var properties = (from p in typeof(T).GetProperties(BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Instance)
                                       .Where(pi => !(pi.PropertyType.IsSubclassOf(typeof(EntityObject)))
                                       && !(pi.PropertyType.IsSubclassOf(typeof(EntityReference))))
                              select p).ToList<PropertyInfo>();
            return properties;

        }