Createur de classes

Soyez le premier à donner votre avis sur cette source.

Vue 7 617 fois - Téléchargée 589 fois

Description

je viens de faire ce code qui permet de créer des classes a partir d'un base de donnee Access. J'ai commenté les script.
D'ici quelque jours je vais mettre la création de classe à partir de Sql Server.
De plus je vais mettre en place le création d'un select, insert, update et delete.
Pourriez vous me dire si vous trouvez ce createur utile ou pas et n'hésitez pas à envoyer vos commentaire.
Merci.

Source / Exemple :


Voici ce que l'on obtient

Public Class Details_Users

dim m_Id_User as System.Int32
Public Property Id_User As String
Get
Return m_Id_User
End Get
Set(ByVal Value as String)
m_Id_User = Value
End Set
End Property

dim m_Nom_User as System.String
Public Property Nom_User As String
Get
Return m_Nom_User
End Get
Set(ByVal Value as String)
m_Nom_User = Value
End Set
End Property

dim m_Age_User as System.Int32
Public Property Age_User As String
Get
Return m_Age_User
End Get
Set(ByVal Value as String)
m_Age_User = Value
End Set
End Property

dim m_Ddn_User as System.DateTime
Public Property Ddn_User As String
Get
Return m_Ddn_User
End Get
Set(ByVal Value as String)
m_Ddn_User = Value
End Set
End Property

dim m_BlnUser as System.Boolean
Public Property BlnUser As String
Get
Return m_BlnUser
End Get
Set(ByVal Value as String)
m_BlnUser = Value
End Set
End Property

End Class

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
589
Date d'inscription
jeudi 2 octobre 2003
Statut
Membre
Dernière intervention
29 avril 2008
2
Salut,
voici l'adresse pour telecharger le logiciel terminé et amélioré bien sur

http://www.infosoft81.com/InfoSoft/Indigo/Deploiement/publish.htm
Messages postés
4
Date d'inscription
dimanche 19 juin 2005
Statut
Membre
Dernière intervention
16 mai 2007

Petit application mais très utile, même si l'on sait bien que « tout peut aussi se faire a la main ». Ca m?intéresse d'avoir la version complète que tu allé sortir bientôt ; si tu veux la partager, envoila a bety7777777@hotmail.com.

Un seul détail : Si le nom de table est « Memo » (par exemple), l'application plante. Il faudra modifier le code de la requête pour qui tient compte des mots réservé. Moi j'ais résolut ce problème come suit :

Dim MyRequete As String = "SELECT * FROM [" & TableNameAccess & "]"

Salut
Messages postés
589
Date d'inscription
jeudi 2 octobre 2003
Statut
Membre
Dernière intervention
29 avril 2008
2
oui merci de m'avoir fait remarquer le type differents au sein des variables locales et des property.
Messages postés
215
Date d'inscription
jeudi 24 octobre 2002
Statut
Membre
Dernière intervention
7 septembre 2007
1
ah oui, note : 6/10
Messages postés
215
Date d'inscription
jeudi 24 octobre 2002
Statut
Membre
Dernière intervention
7 septembre 2007
1
l'idée est pas mal mais des choses me dérange.
j'ai pas téléchargé ni testé, j'ai juste maté le code.

la méthode du choix de la base de donnée (if AccessChoised then ... else 'traitement sql server) me semble particulièrement inadaptée (pour pas dire naze).

ensuite un probleme évident est que tu ne type pas tes propriétés comme tes variables locales:
MyStreamWr.WriteLine("dim m_" & MyDsFill.Tables(0).Columns.Item(NbCol).ColumnName & " as " & MyDsFill.Tables(0).Columns.Item(NbCol).DataType.ToString)
pour la variable locale, et
PropertyVariable = "Public Property " & NameVariable & " As String" ...
pour la propriété équivalente.

un dernier point serait de pouvoir faire la meme chose depuis une vue ou une procédure stockée, car ça t'oblige a faire des classes a l'image de base de données donc soit des classes inadaptées soit une base de donnée crado (bon on est sous access donc on s'en fout on peut faire de la merde mais quitte a t'amuser a faire du code générateur, autant donner les moyens).

dernier point les noms de champs, ils ont interet a être bien formatés car tu ne les teste pas du tout.

je l'aurais fait moi des le départ sur une réquête ou une proc, en faisant la création de la classe selon le recordset retourné.
je n'aurais pas fait de différence se lon la base de donnée attaquée hormis dans la connection.
le reste est tres bien, notemment l'idée de départ.

Benou, crapou.
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.