private bool IsExtensionOf(IType type, IExtensionEnabled entity) { if (entity == null || !entity.IsExtension) { return(false); } IParameter[] parameters = entity.GetParameters(); if (parameters.Length == 0) { return(false); } IType extensionType = parameters[0].Type; return(IsValidExtensionType(type, extensionType, entity)); }
public bool Match(object item) { IExtensionEnabled e = item as IExtensionEnabled; if (e == null) { return(true); } if (!e.IsExtension) { return(true); } IParameter[] parameters = e.GetParameters(); if (parameters.Length == 0) { return(true); } return(!parameters[0].Type.IsAssignableFrom(_type)); }