C#数据类型和SQL数据类型的转换

有了这个,再也不愁在C#中找不到SQL的数据类型了


001<?xml version="1.0" encoding="utf-8" ?>
002<Languages>
003  <Language From="SQL" To="C#">
004    <Type From="bigint" To="long" />
005    <Type From="binary" To="object" />
006    <Type From="bit" To="bool" />
007    <Type From="char" To="string" />
008    <Type From="datetime" To="DateTime" />
009    <Type From="decimal" To="decimal" />
010    <Type From="float" To="double" />
011    <Type From="image" To="byte[]" />
012    <Type From="int" To="int" />
013    <Type From="money" To="decimal" />
014    <Type From="nchar" To="string" />
015    <Type From="ntext" To="string" />
016    <Type From="numeric" To="decimal" />
017    <Type From="nvarchar" To="string" />
018    <Type From="real" To="float" />
019    <Type From="smalldatetime" To="DateTime" />
020    <Type From="smallint" To="short" />
021    <Type From="smallmoney" To="decimal" />
022    <Type From="text" To="string" />
023    <Type From="timestamp" To="byte[]" />
024    <Type From="tinyint" To="byte" />
025    <Type From="uniqueidentifier" To="Guid" />
026    <Type From="varbinary" To="byte[]" />
027    <Type From="varchar" To="string" />
028    <Type From="xml" To="string" />
029    <Type From="sql_variant" To="object" />
030  </Language>
031  <Language From="SQL" To="C# System Types">
032    <Type From="bigint" To="System.Int64" />
033    <Type From="binary" To="System.Object" />
034    <Type From="bit" To="System.Boolean" />
035    <Type From="char" To="System.String" />
036    <Type From="datetime" To="System.DateTime" />
037    <Type From="decimal" To="System.Decimal" />
038    <Type From="float" To="System.Double" />
039    <Type From="image" To="System.Byte[]" />
040    <Type From="int" To="System.Int32" />
041    <Type From="money" To="System.Decimal" />
042    <Type From="nchar" To="System.String" />
043    <Type From="ntext" To="System.String" />
044    <Type From="numeric" To="System.Decimal" />
045    <Type From="nvarchar" To="System.String" />
046    <Type From="real" To="System.Single" />
047    <Type From="smalldatetime" To="System.DateTime" />
048    <Type From="smallint" To="System.Int16" />
049    <Type From="smallmoney" To="System.Decimal" />
050    <Type From="text" To="System.String" />
051    <Type From="timestamp" To="System.Byte[]" />
052    <Type From="tinyint" To="System.Byte" />
053    <Type From="uniqueidentifier" To="System.Guid" />
054    <Type From="varbinary" To="System.Byte[]" />
055    <Type From="varchar" To="System.String" />
056    <Type From="xml" To="System.String" />
057    <Type From="sql_variant" To="System.Object" />
058  </Language>
059  <DbTarget From="SQL" To="SqlClient">
060    <Type From="bigint" To="SqlDbType.BigInt" />
061    <Type From="binary" To="SqlDbType.Binary" />
062    <Type From="bit" To="SqlDbType.Bit" />
063    <Type From="char" To="SqlDbType.Char" />
064    <Type From="datetime" To="SqlDbType.DateTime" />
065    <Type From="decimal" To="SqlDbType.Decimal" />
066    <Type From="float" To="SqlDbType.Float" />
067    <Type From="image" To="SqlDbType.Image" />
068    <Type From="int" To="SqlDbType.Int" />
069    <Type From="money" To="SqlDbType.Money" />
070    <Type From="nchar" To="SqlDbType.NChar" />
071    <Type From="ntext" To="SqlDbType.NText" />
072    <Type From="numeric" To="SqlDbType.Decimal" />
073    <Type From="nvarchar" To="SqlDbType.NVarChar" />
074    <Type From="real" To="SqlDbType.Real" />
075    <Type From="smalldatetime" To="SqlDbType.SmallDateTime" />
076    <Type From="smallint" To="SqlDbType.SmallInt" />
077    <Type From="smallmoney" To="SqlDbType.SmallMoney" />
078    <Type From="text" To="SqlDbType.Text" />
079    <Type From="timestamp" To="SqlDbType.Timestamp" />
080    <Type From="tinyint" To="SqlDbType.TinyInt" />
081    <Type From="uniqueidentifier" To="SqlDbType.UniqueIdentifier" />
082    <Type From="varbinary" To="SqlDbType.VarBinary" />
083    <Type From="varchar" To="SqlDbType.VarChar" />
084    <Type From="xml" To="SqlDbType.Xml" />
085    <Type From="sql_variant" To="SqlDbType.Variant" />
086  </DbTarget>
087  <DbTarget From="SQLCE" To="SqlServerCe">
088    <Type From="bigint" To="SqlDbType.BigInt" />
089    <Type From="binary" To="SqlDbType.Binary" />
090    <Type From="bit" To="SqlDbType.Bit" />
091    <Type From="char" To="SqlDbType.Char" />
092    <Type From="datetime" To="SqlDbType.DateTime" />
093    <Type From="decimal" To="SqlDbType.Decimal" />
094    <Type From="float" To="SqlDbType.Float" />
095    <Type From="image" To="SqlDbType.Image" />
096    <Type From="int" To="SqlDbType.Int" />
097    <Type From="money" To="SqlDbType.Money" />
098    <Type From="nchar" To="SqlDbType.NChar" />
099    <Type From="ntext" To="SqlDbType.NText" />
100    <Type From="numeric" To="SqlDbType.Decimal" />
101    <Type From="nvarchar" To="SqlDbType.NVarChar" />
102    <Type From="real" To="SqlDbType.Real" />
103    <Type From="smalldatetime" To="SqlDbType.SmallDateTime" />
104    <Type From="smallint" To="SqlDbType.SmallInt" />
105    <Type From="smallmoney" To="SqlDbType.SmallMoney" />
106    <Type From="text" To="SqlDbType.Text" />
107    <Type From="timestamp" To="SqlDbType.Timestamp" />
108    <Type From="tinyint" To="SqlDbType.TinyInt" />
109    <Type From="uniqueidentifier" To="SqlDbType.UniqueIdentifier" />
110    <Type From="varbinary" To="SqlDbType.VarBinary" />
111    <Type From="varchar" To="SqlDbType.VarChar" />
112    <Type From="xml" To="SqlDbType.Xml" />
113    <Type From="sql_variant" To="SqlDbType.Variant" />
114  </DbTarget>
115</Languages>
C#读取方法



01static Dictionary<string, string> list = new Dictionary<string, string>();
02        static void Main(string[] args)
03        {
04            XElement root = XElement.Load("LanguagesStr.xml");
05 
06            var custs = (from c in root.Elements("DbTarget")
07                         where c.Attribute("From").Value.Equals("SQL") && c.Attribute("To").Value.Equals("SqlClient")
08                         select c).ToList();
09 
10            foreach (XElement node in custs.Elements("Type"))
11            {
12                list.Add(node.Attribute("From").Value, node.Attribute("To").Value);
13            }
14 
15            Console.ReadKey();
16        }


原文链接:C#数据类型和SQL数据类型的转换