Le problème était que lorsque j'ai importé le fichier TestDB.MDF dans mon projet Visual 2010, une copie de celui-ci a été effectuée dans le dossier du projet.
Lorsque vous exécutez / déboguez le programme, une autre copie de ce fichier est créée et placée dans le dossier \ bin \ Debug \.
Dans la chaîne de connexion que j'utilisais, j'avais mentionné: AttachDbFilename = | DataDirectory | \ TestBuildDB.mdf .. Cela signifiait que toutes les lectures / écritures étaient effectuées sur la copie dans le dossier bin \ Debug.
Cependant, le fichier TestDB.MDF que je cherchais pour vérifier si des enregistrements ont été insérés ou non, était dans le dossier du projet! Donc, fondamentalement, il y avait
deux fichiers MDF, et
j'écrivais les enregistrements dans un fichier, mais j'essayais de les trouver dans l'autre
Lorsque vous ajoutez un fichier MDF dans votre projet VS2010, VS2010 établit par défaut une connexion à ce MDF , d'où vous pouvez parcourir les éléments de ce fichier MDF.
Le fichier MDF utilisé à cet effet était celui placé dans le dossier du projet, PAS celui du dossier bin \ Debug \.
Et comme je l'ai dit plus tôt, mon code a utilisé celui du dossier bin \ Debug
Donc, ce que j'ai fait maintenant, c'est que j'ai supprimé la référence du fichier Test.MDF de mon projet, ce qui supprime la copie présente dans le projet. dossier. Cependant, j'ai une copie du fichier TestDB.MDF dans le dossier bin \ Debug \, auquel je me connecte depuis mon application.
Et si je veux parcourir le fichier MDf en dehors de mon projet, j'utilise SQL Management Studio. Le seul problème ici est qu'un fichier MDF ne peut être utilisé que par un programme à un moment donné. Donc, si je dois l'utiliser avec mon application, je dois la mettre hors ligne depuis SQL Management Studio, et vice versa!
Partager