/// <summary> /// 返回由 <typeparamref name="T"/> 标识的特性(包括继承链)。 /// </summary> /// <typeparam name="T">特性的数据类型。</typeparam> /// <param name="member">成员。</param> /// <returns>如果存在标志,则返回这个值,否则返回一个默认值。</returns> public static T GetAttribute <T>(this MemberInfo member) { return(member.GetAttributes <T>().FirstOrDefault()); }
/// <summary> /// 返回由 <typeparamref name="T"/> 标识的特性。 /// </summary> /// <typeparam name="T">特性的数据类型。</typeparam> /// <param name="member">成员。</param> /// <param name="inherit">指定是否搜索该成员的继承链以查找这些属性。</param> /// <returns>如果存在标志,则返回这个值,否则返回一个默认值。</returns> public static T GetAttribute <T>(this MemberInfo member, bool inherit) { return(member.GetAttributes <T>(inherit).FirstOrDefault()); }
/// <summary> /// 返回由 <typeparamref name="T"/> 标识的特性(包括继承链)。 /// </summary> /// <typeparam name="T">特性的数据类型。</typeparam> /// <param name="member">成员。</param> /// <returns>如果存在标志,则返回这个值,否则返回一个默认值。</returns> public static T GetAttribute <T>(this MemberInfo member) => member.GetAttributes <T>().FirstOrDefault();