コード例 #1
0
        public static string value_name(this object obj)
        {
            var type = obj.GetType();
            FriendlyNameAttribute attr = FriendlyNameAttribute.Empty;

            if (type.IsEnum)
            {
                attr = (obj as Enum).GetAttribute <FriendlyNameAttribute>();
            }
            return(attr == FriendlyNameAttribute.Empty ? obj.ToString() : attr.Name);
        }
コード例 #2
0
        /// <summary>
        /// Helper to get the FriendlyName from the FriendlyNameAttribute on logger plugin.
        /// </summary>
        /// <param name="testLoggerType">Data type of the test logger</param>
        /// <returns>FriendlyName identifying the test logger</returns>
        private static string GetFriendlyName(Type testLoggerType)
        {
            string friendlyName = string.Empty;

            object[] attributes = testLoggerType.GetTypeInfo().GetCustomAttributes(typeof(FriendlyNameAttribute), false).ToArray();
            if (attributes != null && attributes.Length > 0)
            {
                FriendlyNameAttribute friendlyNameAttribute = (FriendlyNameAttribute)attributes[0];

                if (!string.IsNullOrEmpty(friendlyNameAttribute.FriendlyName))
                {
                    friendlyName = friendlyNameAttribute.FriendlyName;
                }
            }

            return(friendlyName);
        }