示例#1
0
        /// <summary>
        /// 格式化数据类型
        /// </summary>
        /// <param name="typeString">数据类型字符串</param>
        /// <param name="size">列长</param>
        /// <returns>数据类型</returns>
        internal unsafe static SqlDbType FormatDbType(string typeString, out int size)
        {
            fixed(char *typeFixed = typeString)
            {
                char *   end = typeFixed + typeString.Length, typeEnd = *(end - 1) == ')' ? AutoCSer.Extension.StringExtension.FindNotNull(typeFixed, end, '(') : end;
                TypeName typeName = new TypeName {
                    Name = typeString, Length = (int)(typeEnd - typeFixed)
                };
                KeyValue <SqlDbType, int> value = new KeyValue <SqlDbType, int>((SqlDbType)(-1), int.MinValue);

                sqlTypes.Get(typeName, ref value);
                if (value.Value == int.MinValue)
                {
                    size = 0;
                    if (typeEnd != end)
                    {
                        for (--end; ++typeEnd != end; size += *typeEnd - '0')
                        {
                            size *= 10;
                        }
                    }
                }
                else
                {
                    size = value.Value;
                }
                return(value.Key);
            }
        }
示例#2
0
 internal static void Get(Encoding encoding, ref FileBom bom)
 {
     boms.Get(encoding, ref bom);
 }
示例#3
0
 public static void Get(Encoding encoding, ref FileBom bom)
 {
     boms.Get(encoding, ref bom);
 }