DataColumn 与Xml data type转换。

来源:互联网 发布:蛋糕西点软件 编辑:程序博客网 时间:2024/05/01 19:47
下面代码通过反射System.Data程序集得到

internal static string XmlDataTypeName(Type type)
{
if (type == typeof(char))
{
return "_";
}
if ((type == typeof(byte[])) || (type == typeof(SqlBytes)))
{
return "base64Binary";
}
if ((type == typeof(DateTime)) || (type == typeof(SqlDateTime)))
{
return "dateTime";
}
if (type == typeof(TimeSpan))
{
return "duration";
}
if (((type == typeof(decimal)) || (type == typeof(SqlDecimal))) || (type == typeof(SqlMoney)))
{
return "decimal";
}
if (type == typeof(int))
{
return "int";
}
if ((type == typeof(bool)) || (type == typeof(SqlBoolean)))
{
return "boolean";
}
if ((type == typeof(float)) || (type == typeof(SqlSingle)))
{
return "float";
}
if ((type == typeof(double)) || (type == typeof(SqlDouble)))
{
return "double";
}
if ((type == typeof(sbyte)) || (type == typeof(SqlByte)))
{
return "byte";
}
if (type == typeof(byte))
{
return "unsignedByte";
}
if ((type == typeof(short)) || (type == typeof(SqlInt16)))
{
return "short";
}
if ((type == typeof(int)) || (type == typeof(SqlInt32)))
{
return "int";
}
if ((type == typeof(long)) || (type == typeof(SqlInt64)))
{
return "long";
}
if (type == typeof(ushort))
{
return "unsignedShort";
}
if (type == typeof(uint))
{
return "unsignedInt";
}
if (type == typeof(ulong))
{
return "unsignedLong";
}
if (type == typeof(Uri))
{
return "anyURI";
}
if (type == typeof(SqlBinary))
{
return "hexBinary";
}
if (((type == typeof(string)) || (type == typeof(SqlGuid))) || ((type == typeof(SqlString)) || (type == typeof(SqlChars))))
{
return "string";
}
if ((type != typeof(object)) && (type != typeof(SqlXml)))
{
return string.Empty;
}
return "anyType";
}
   
原创粉丝点击