/// <summary> /// /// </summary> /// <param name="memberDescriptors"></param> /// <param name="declaringDescriptor"></param> /// <returns></returns> public static IgnoreChildPropertyDescriptors RetrieveMemberDescriptors(Type declaringType, IEntryDescriptor declaringDescriptor) { var _ignorePropertyList = new ListCollection <IgnoreChildPropertyDescriptor>(); var _propertyDescriptors = DbQueryPropertyHelpers.RetrieveMemberDescriptors(declaringType, declaringDescriptor); foreach (var _propertyDescriptor in _propertyDescriptors) { var _ignoreChildProperties = IgnoreChildPropertyHelpers.RetrieveMemberDescriptors(_propertyDescriptor, declaringDescriptor); if (!_ignoreChildProperties.IsEmpty) { _ignorePropertyList.AddRange(_ignoreChildProperties); } } return(new IgnoreChildPropertyDescriptors(_ignorePropertyList, declaringDescriptor)); }
/// <summary> /// /// </summary> /// <param name="instance"></param> /// <param name="declaringDescriptor"></param> /// <returns></returns> public static DbQueryPropertyDescriptors RetrieveMemberDescriptors(object instance, IEntryDescriptor declaringDescriptor) { return(DbQueryPropertyHelpers.RetrieveMemberDescriptors(instance.GetType(), declaringDescriptor)); }