Unosquare
    Show / Hide Table of Contents

    Class Extensions

    Extension methods.

    Inheritance
    Object
    Extensions
    Inherited Members
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: Swan
    Syntax
    public static class Extensions

    Methods

    CopyKeyValuePairTo(IDictionary<String, Object>, Object, String[])

    Iterates over the keys of the source and tries to write a compatible value to a public, instance, writable property in the destination.

    Declaration
    public static int CopyKeyValuePairTo(this IDictionary<string, object> source, object target, params string[] ignoreKeys)
    Parameters
    Type Name Description
    IDictionary<String, Object> source

    The source.

    Object target

    The target.

    String[] ignoreKeys

    The ignore keys.

    Returns
    Type Description
    Int32

    Number of properties that was copied successful.

    CopyKeyValuePairToNew<T>(IDictionary<String, Object>, String[])

    Iterates over the keys of the source and tries to write a compatible value to a public, instance, writable property in the destination.

    Declaration
    public static T CopyKeyValuePairToNew<T>(this IDictionary<string, object> source, params string[] ignoreKeys)
    Parameters
    Type Name Description
    IDictionary<String, Object> source

    The source.

    String[] ignoreKeys

    The ignore keys.

    Returns
    Type Description
    T

    The specified type with properties copied.

    Type Parameters
    Name Description
    T

    Object Type.

    CopyOnlyPropertiesTo(Object, Object, String[])

    Iterates over the public, instance, readable properties of the source and tries to write a compatible value to a public, instance, writable property in the destination.

    Declaration
    public static int CopyOnlyPropertiesTo(this object source, object target, params string[] propertiesToCopy)
    Parameters
    Type Name Description
    Object source

    The source.

    Object target

    The destination.

    String[] propertiesToCopy

    Properties to copy.

    Returns
    Type Description
    Int32

    Number of properties that were successfully copied.

    CopyOnlyPropertiesToNew<T>(Object, String[])

    Copies the only properties to new instance of T.

    Declaration
    public static T CopyOnlyPropertiesToNew<T>(this object source, params string[] propertiesToCopy)
        where T : class
    Parameters
    Type Name Description
    Object source

    The source.

    String[] propertiesToCopy

    The properties to copy.

    Returns
    Type Description
    T

    The specified type with properties copied.

    Type Parameters
    Name Description
    T

    Object Type.

    CopyPropertiesTo<T>(T, Object, String[])

    Iterates over the public, instance, readable properties of the source and tries to write a compatible value to a public, instance, writable property in the destination.

    Declaration
    public static int CopyPropertiesTo<T>(this T source, object target, params string[] ignoreProperties)
        where T : class
    Parameters
    Type Name Description
    T source

    The source.

    Object target

    The target.

    String[] ignoreProperties

    The ignore properties.

    Returns
    Type Description
    Int32

    Number of properties that was copied successful.

    Type Parameters
    Name Description
    T

    The type of the source.

    CopyPropertiesToNew<T>(Object, String[])

    Copies the properties to new instance of T.

    Declaration
    public static T CopyPropertiesToNew<T>(this object source, string[] ignoreProperties = null)
        where T : class
    Parameters
    Type Name Description
    Object source

    The source.

    String[] ignoreProperties

    The ignore properties.

    Returns
    Type Description
    T

    The specified type with properties copied.

    Type Parameters
    Name Description
    T

    The new object type.

    ForEach<TKey, TValue>(IDictionary<TKey, TValue>, Action<TKey, TValue>)

    Executes the item action for each element in the Dictionary.

    Declaration
    public static void ForEach<TKey, TValue>(this IDictionary<TKey, TValue> dict, Action<TKey, TValue> itemAction)
    Parameters
    Type Name Description
    IDictionary<TKey, TValue> dict

    The dictionary.

    Action<TKey, TValue> itemAction

    The item action.

    Type Parameters
    Name Description
    TKey

    The type of the key.

    TValue

    The type of the value.

    GetCopyableProperties(Object)

    Gets the copyable properties.

    If there is no properties with the attribute AttributeCache returns all the properties.

    Declaration
    public static IEnumerable<string> GetCopyableProperties(this object this)
    Parameters
    Type Name Description
    Object this

    The object.

    Returns
    Type Description
    IEnumerable<String>

    Array of properties.

    GetOrAdd<TKey, TValue>(IDictionary<TKey, TValue>, TKey, Func<TKey, TValue>)

    Adds a key/value pair to the Dictionary if the key does not already exist. If the value is null, the key will not be updated. Based on ConcurrentDictionary.GetOrAdd method.

    Declaration
    public static TValue GetOrAdd<TKey, TValue>(this IDictionary<TKey, TValue> dict, TKey key, Func<TKey, TValue> valueFactory)
    Parameters
    Type Name Description
    IDictionary<TKey, TValue> dict

    The dictionary.

    TKey key

    The key.

    Func<TKey, TValue> valueFactory

    The value factory.

    Returns
    Type Description
    TValue

    The value for the key.

    Type Parameters
    Name Description
    TKey

    The type of the key.

    TValue

    The type of the value.

    GetValueOrDefault<TKey, TValue>(IDictionary<TKey, TValue>, TKey, TValue)

    Gets the value if exists or default.

    Declaration
    public static TValue GetValueOrDefault<TKey, TValue>(this IDictionary<TKey, TValue> dict, TKey key, TValue defaultValue = null)
    Parameters
    Type Name Description
    IDictionary<TKey, TValue> dict

    The dictionary.

    TKey key

    The key.

    TValue defaultValue

    The default value.

    Returns
    Type Description
    TValue

    The value of the provided key or default.

    Type Parameters
    Name Description
    TKey

    The type of the key.

    TValue

    The type of the value.

    Retry(Action, TimeSpan, Int32)

    Does the specified action.

    Declaration
    public static void Retry(this Action action, TimeSpan retryInterval = null, int retryCount = 3)
    Parameters
    Type Name Description
    Action action

    The action.

    TimeSpan retryInterval

    The retry interval.

    Int32 retryCount

    The retry count.

    Retry<T>(Func<T>, TimeSpan, Int32)

    Does the specified action.

    Declaration
    public static T Retry<T>(this Func<T> action, TimeSpan retryInterval = null, int retryCount = 3)
    Parameters
    Type Name Description
    Func<T> action

    The action.

    TimeSpan retryInterval

    The retry interval.

    Int32 retryCount

    The retry count.

    Returns
    Type Description
    T

    The return value of the method that this delegate encapsulates.

    Type Parameters
    Name Description
    T

    The type of the source.

    Comments

    Back to top Copyright © 2017-2019 Unosquare