ParseHelper.cs 1.94 KB
using System;
using System.Globalization;

public class ParseHelper
{
    public static string GetString(object value, string defaultValue = "")
    {
        string stringValue = defaultValue;

        try
        {
            stringValue = value.ToString();
        }
        catch
        {
        }

        return stringValue;
    }

    public static short GetShort(object value, short defaultValue = 0)
    {
        short shortValue = defaultValue;

        try
        {
            shortValue = short.Parse(value.ToString());
        }
        catch
        {
        }

        return shortValue;
    }

    public static int GetInt(object value, int defaultValue = 0)
    {
        int intValue = defaultValue;

        try
        {
            intValue = int.Parse(value.ToString());
        }
        catch
        {
        }

        return intValue;
    }

    public static float GetFloat(object value, float defaultValue = 0)
    {
        float intValue = defaultValue;

        try
        {
            intValue = float.Parse(value.ToString());
        }
        catch
        {
        }

        return intValue;
    }

    public static bool GetBool(object value, bool defaultValue = false)
    {
        bool boolValue = defaultValue;

        try
        {
            boolValue = (bool)value;
        }
        catch
        {
        }

        return boolValue;
    }

    public static DateTime GetDateTimeAsLocal(object value, DateTime defaultValue = new DateTime())
    {
        DateTime dateTimeValue = defaultValue;

        try
        {
            if (value.ToString().Contains(":00Z"))
            {
                dateTimeValue = DateTime.Parse(value.ToString(), CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal);
            }
            else
            {
                dateTimeValue = DateTime.Parse(value.ToString());
            }
        }
        catch
        {
        }

        return dateTimeValue;
    }
}