Get attribute value and convert to other type : Attributes « Reflection « C# / C Sharp

Home
C# / C Sharp
1.2D Graphics
2.Class Interface
3.Collections Data Structure
4.Components
5.Data Types
6.Database ADO.net
7.Date Time
8.Design Patterns
9.Development Class
10.Event
11.File Stream
12.Generics
13.GUI Windows Form
14.Internationalization I18N
15.Language Basics
16.LINQ
17.Network
18.Office
19.Reflection
20.Regular Expressions
21.Security
22.Services Event
23.Thread
24.Web Services
25.Windows
26.Windows Presentation Foundation
27.XML
28.XML LINQ
C# / C Sharp » Reflection » AttributesScreenshots 
Get attribute value and convert to other type
      
using System;
using System.Linq;
using System.Xml.Linq;
namespace DACU.Tools
{
    static class XmlUtils
    {

        public static bool? NodeValueToBool(XElement node)
        {
            if (node == nullreturn null;
            return node.Value == "1" (bool?)true (node.Value == "0" (bool?)false null);
        }

        public static int[] NodeValueToArray(XElement node)
        {
            if (node == null || node.IsEmptyreturn null;
            var ints = node.Elements("lid");
            return ints == null ?
                null
                :
                ints.Where(elem => !String.IsNullOrWhiteSpace(elem.Value)).Select(elem => Convert.ToInt32(elem.Value)).ToArray();
        }

        public static string GetStringFromAttribute(this XElement element, string attributeName)
        {
            XAttribute att = element.Attribute(attributeName);
            return att == null || att.Value == null "" : att.Value;
        }

        public static int GetIntFromAttribute(this XElement element, string attributeName)
        {
            XAttribute att = element.Attribute(attributeName);
            if (att == nullreturn -1;
            int value;
            if (int.TryParse(att.Value, out value))
                return value;
            return -1;
        }

        public static double GetDoubleFromAttribute(this XElement element, string attributeName)
        {
            XAttribute att = element.Attribute(attributeName);
            if (att == nullreturn double.NaN;
            double value;
            if (double.TryParse(att.Value, out value))
                return value;
            return double.NaN;
        }

        public static float GetFloatFromAttribute(this XElement element, string attributeName)
        {
            XAttribute att = element.Attribute(attributeName);
            if (att == nullreturn float.NaN;
            float value;
            if (float.TryParse(att.Value, out value))
                return value;
            return float.NaN;
        }

        public static bool GetBoolFromAttribute(this XElement element, string attributeName)
        {
            XAttribute att = element.Attribute(attributeName);
            if (att == nullreturn false;
            bool value;
            if (bool.TryParse(att.Value, out value))
                return value;
            return false;
        }

    }
}

   
    
    
    
    
    
  
Related examples in the same category
1.Use GetCustomAttribute
2.Attributes:Reflecting on AttributesAttributes:Reflecting on Attributes
3.Displaying attributes for a class.
4.Specifies flags that describe the attributes of a field.Specifies flags that describe the attributes of a field.
5.Defines a company name custom attribute for an assembly manifest.
6.Defines a copyright custom attribute for an assembly manifest.
7.Represents the base class for custom attributes.
8.Retrieves a custom attribute applied to a specified assembly.
9.Retrieves a custom attribute applied to a member of a type.
10.Get a custom attribute applied to a member of a type.
11.Get an array of the custom attributes applied to an assembly. A parameter specifies the assembly.
12.Get an array of the custom attributes applied to a method parameter.
13.Attribute.IsDefaultAttribute
14.Attribute.IsDefined
15.Determines whether any custom attributes are applied to an assembly.
16.Determines whether any custom attributes are applied to a member of a type.
17.Determines whether any custom attributes of a specified type are applied to a module.
18.Determines whether any custom attributes are applied to a method parameter.
19.Indicates to compilers that a method call or attribute should be ignored unless a specified conditional compilation symbol is defined.
20.Get member attribute
21.Attributed Types Utility
22.Retrieve Method Attribute Only
23.Retrieve Field Attribute List
24.Get Types With Attribute
25.Get Methods With Attribute
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.