// Description: C# Extension Methods | Enhance the .NET Framework and .NET Core with over 1000 extension methods.// Website & Documentation: https://csharp-extension.com/// Issues: https://github.com/zzzprojects/Z.ExtensionMethods/issues// License (MIT): https://github.com/zzzprojects/Z.ExtensionMethods/blob/master/LICENSE// More projects: https://zzzprojects.com/// Copyright ZZZ Projects Inc. All rights reserved.using System;using System.ComponentModel;using System.Reflection;public static partial class Extensions{/// <summary>/// An object extension method that gets description attribute./// </summary>/// <param name="value">The value to act on.</param>/// <returns>The description attribute.</returns>public static string GetCustomAttributeDescription(this object value){var type = value.GetType();var attributes = type.IsEnum ?type.GetField(value.ToString()).GetCustomAttributes(typeof (DescriptionAttribute)) :type.GetCustomAttributes(typeof (DescriptionAttribute));if (attributes.Length == 0){return null;}if (attributes.Length == 1){return ((DescriptionAttribute) attributes[0]).Description;}throw new Exception(string.Format("Ambiguous attribute. Multiple custom attributes of the same type found: {0} attributes found.", attributes.Length));}/// <summary>An object extension method that gets description attribute.</summary>/// <param name="value">The value to act on.</param>/// <param name="inherit">true to inherit.</param>/// <returns>The description attribute.</returns>public static string GetCustomAttributeDescription(this object value, bool inherit){var type = value.GetType();var attributes = type.IsEnum ?type.GetField(value.ToString()).GetCustomAttributes(typeof (DescriptionAttribute), inherit) :type.GetCustomAttributes(typeof (DescriptionAttribute));if (attributes.Length == 0){return null;}if (attributes.Length == 1){return ((DescriptionAttribute) attributes[0]).Description;}throw new Exception(string.Format("Ambiguous attribute. Multiple custom attributes of the same type found: {0} attributes found.", attributes.Length));}/// <summary>An object extension method that gets description attribute.</summary>/// <param name="value">The value to act on.</param>/// <returns>The description attribute.</returns>public static string GetCustomAttributeDescription(this MemberInfo value){var attributes = value.GetCustomAttributes(typeof (DescriptionAttribute));if (attributes.Length == 0){return null;}if (attributes.Length == 1){return ((DescriptionAttribute) attributes[0]).Description;}throw new Exception(string.Format("Ambiguous attribute. Multiple custom attributes of the same type found: {0} attributes found.", attributes.Length));}/// <summary>An object extension method that gets description attribute.</summary>/// <param name="value">The value to act on.</param>/// <param name="inherit">true to inherit.</param>/// <returns>The description attribute.</returns>public static string GetCustomAttributeDescription(this MemberInfo value, bool inherit){var attributes = value.GetCustomAttributes(typeof (DescriptionAttribute), inherit);if (attributes.Length == 0){return null;}if (attributes.Length == 1){return ((DescriptionAttribute) attributes[0]).Description;}throw new Exception(string.Format("Ambiguous attribute. Multiple custom attributes of the same type found: {0} attributes found.", attributes.Length));}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。