Comment faire pour résoudre le Système.Type de Système.Les données.DbType?
Quelle est la meilleure façon de trouver des System.Les données.DbType
valeur de l'énumération de la Classe de Base de la Bibliothèque de types dans l'espace de noms System?
Vous devez vous connecter pour publier un commentaire.
Une façon courante est d'avoir un type de carte, avec tous les types pris en charge (différents connecteurs/fournisseurs prend en charge différents types) explicitement mappé. Voici le type de carte pour Dapper:
Pour obtenir une pertinente DbType, tout ce que vous devez faire est de:
Type.GetGenericTypeDefinition
etType.GetGenericArguments
permettrait de résoudre Nullable valeur et le type sous-jacent.Vous pouvez convertir
TypeCode
àDbType
l'aide de la méthodeConvertTypeCodeToDbType
dansSystem.Web.UI.WebControls.Parameter
classe: Le paramètre.ConvertTypeCodeToDbType Méthode.Pour obtenir TypeCode vous pouvez utiliser la méthode
Type.GetTypeCode(Type type)
.System.Web
?Vous regardez la documentation - Type de Données SQL Server Mappages ADO.NET).
Les mappages pour les autres fournisseurs sont également documenté.
Ces vous donner suffisamment d'informations pour écrire un convertisseur.
DbType
est là pour représenter toutes les bases de données, autant que possible.Je ne suis pas au courant de tout système automatisé de logique, vous devriez faire la cartographie de vous-même parce que ce sont de différents types et de la .NET Framework ne peut pas le faire pour vous seul.
voir ici l'ensemble de la table de mappage: Type de Données SQL Server Mappages ADO.NET) vous pouvez imaginer que pour Oracle, MySQL, sqLite et les autres moteurs, il pourrait être similaire tableaux selon les .NET fournisseur de données /connect