예제 #1
0
        private static object DataSetGet(string DataType, object val, int IsFormat = 0, dynamic d = null)
        {
            object r;
            string v = "";

            if (val != null)
            {
                v = val.ToString();
            }
            if (v.ToLower() == "null")
            {
                v = "";
            }
            v = v.Trim().Replace("{}", "");
            try
            {
                switch (DataType.ToLower())
                {
                case "smallint": // string integer
                case "int":      // string integer
                case "int32":    // string integer
                case "int16":    // string integer
                    if (IsFormat == 1)
                    {
                        r = FormatNumber(v, 0);
                    }
                    else if (IsFormat == 2)
                    {
                        if (val != null)
                        {
                            r = int.Parse(v);
                        }
                        else
                        {
                            r = 0;
                        }
                    }
                    else
                    {
                        if (val != null)
                        {
                            r = val;
                        }
                        else
                        {
                            r = 0;
                        }
                    }
                    break;

                case "int64":     // string long
                case "bigint":    // string long
                    if (IsFormat == 1)
                    {
                        r = FormatNumber(v, 0);
                    }
                    else if (IsFormat == 2)
                    {
                        if (val != null)
                        {
                            r = long.Parse(v);
                        }
                        else
                        {
                            r = 0;
                        }
                    }
                    else
                    {
                        if (val != null)
                        {
                            r = val;
                        }
                        else
                        {
                            r = 0;
                        }
                    }
                    break;

                case "double":     // string double
                case "decimal":    // string double
                case "numeric":    // string double
                    if (IsFormat == 1)
                    {
                        r = FormatNumber(v, 0);
                    }
                    else if (IsFormat == 2)
                    {
                        if (val != null)
                        {
                            r = double.Parse(v);
                        }
                        else
                        {
                            r = 0;
                        }
                    }
                    else
                    {
                        if (val != null)
                        {
                            r = val;
                        }
                        else
                        {
                            r = 0;
                        }
                    }
                    break;

                case "date":     // string date
                    if (IsFormat == 1)
                    {
                        r = HRMDate(DateTime.Parse(v));
                    }
                    else if (IsFormat == 2)
                    {
                        r = DateTime.Parse(v);
                    }
                    else
                    {
                        r = val;
                    }
                    break;

                case "datetime":     // string date
                    if (IsFormat == 1)
                    {
                        r = HRMDateTime(DateTime.Parse(v));
                    }
                    else if (IsFormat == 2)
                    {
                        r = DateTime.Parse(v);
                    }
                    else
                    {
                        r = val;
                    }
                    break;

                default:
                    if (d != null)
                    {
                        r = Tools.ReplaceStringLangValue_(v, d);
                    }
                    else
                    {
                        r = v;
                    }
                    break;
                }
            }
            catch (Exception)
            {
                switch (DataType.ToLower())
                {
                case "smallint": // string integer
                case "int":      // string integer
                case "int32":    // string integer
                case "int16":    // string integer
                case "bigint":   // string long
                case "int64":    // string long
                case "double":   // string double
                case "decimal":  // string double
                case "numeric":  // string double
                    if (IsFormat == 1)
                    {
                        r = "";
                    }
                    else
                    {
                        r = 0;
                    }
                    break;

                case "date":     // string date
                case "datetime": // string date
                default:
                    r = "";
                    break;
                }
            }
            return(r);
        }