Bonjour,
Mon appli est liée à une base de données. En tant que débutant, j'ai utilisé la fonction "DataSet typé" en mettant à profit le schéma de base de l'onglet XSD sous VS2010.
Mon appli démarre par une Sub Main() dans laquelle j'effectue un certain nombre manip sur le fichier de base de données de l'utilisateur
A un moment, dans cette sub, j'écris :
File.WriteAllBytes(DB_FullPath, My.Resources.mabase)
Cette instruction a pour but d'écraser la base existante dans DB_FullPath par une base vierge stockée dans mes ressources.
Cette instruction provoque un system.IO.exception ("base située dans DB_FullPath déjà ouverte " ). Or, lorsque cette instruction intervient, je n'ai pas encore ouvert la base de données... tout au moins par le code.
Je suspecte mon dataset typé d'avoir initié une connexion avant la procédure Main(). Ce datasettypé se charge en effet à partir du fichier de base situé dans DB_FullPath. Mais je ne sais pas vérifier cette hypothèse.
- Y a-t-il un moyen de savoir quel est l'objet SQLconnection qui a ouvert la base avant mon instruction provoquant l'erreur ?
- Y a-t-il un moyen de vérifier si c'est le datasettypé (bizarrement, lorsque je change la connectionstring de ce dataset, l'erreur demeure) ?
- Y a-t-il un moyen de contrôler le lancement du code sous-jacent à l'onglet XSD, ou tout au moins, à différer ce lancement après mon File.WriteAllBytes ?
Partager