Lorsque l’on souhaite extraire les informations concernant la structure d’une base de données SQL Server, ce sont les tables systèmes sysobjects et syscolumns sur lesquelles il faut s’orienter.
Voici une méthode de conversion simple permettant de convertir l’entier de la colonne xtype dans la table syscolumns en un type C#.
private static Type GetTypeByXType(byte xType)
{
switch (xType)
{
case 36://uniqueidentifier
return typeof(Guid);
case 48://tinyint
return typeof(byte);
case 52://smallint
return typeof(short);
case 56://int
case 108://numeric
return typeof(int);
case 59://real
case 62://float
return typeof(double);
case 60://money
return typeof(decimal);
case 40://date
case 58://smalldatetime
case 61://datetime
return typeof(DateTime);
case 104://bit
return typeof(bool);
case 106://decimal
return typeof(decimal);
case 122://smallmoney
return typeof(float);
case 127://bigint
return typeof(long);
case 34://image
case 98://sql_variant
case 165://varbinary
case 173://binary
return typeof(byte[]);
case 189://timestamp
return typeof(TimeSpan);
case 35://text
case 99://ntext
case 167://varchar
case 175://char
case 231://nvarchar
case 239://nchar
case 241://xml
return typeof(string);
default:
return typeof(object);
}
}
Aucun commentaire pour le moment. Soyez le/la premi(er/ère).