C#, Linq to SQL chaîne de connexion (débutant)
je suis un nouveau linq to sql apprenant et c'est ma toute première tentative de créer une visionneuse de données du programme. L'idée est simple, j'aimerais créer un logiciel qui est en mesure d'afficher le contenu d'une table dans une base de données. C'est tout.
J'ai eu un premier problème ici et je l'ai déjà vu beaucoup de tutes et des articles en ligne, mais j'ai encore cant corriger le bug.
Voici mon code:
static void Main(string[] args)
{
string cs = "Data Source=localhost;Initial Catalog=somedb;Integrated Security=SSPI;";
var db = new DataClasses1DataContext(cs);
db.Connection.Open();
foreach (var b in db.Mapping.GetTables())
Console.WriteLine(b.TableName);
Console.ReadKey(true);
}
Quand j'ai essayé de vérifier db.connection.equals(null);
il retourne false
, alors j'ai pensé que j'ai connecté avec succès à la base de données car il n'y a pas d'erreur du tout. Mais le code ci-dessus n'a pas d'imprimer quoi que ce soit à l'écran.
J'ai un peu perdu et ne sais pas ce qui se passe ici. Personne ne sait ce qui ne va pas ici?
- Combien de mappages sont là, dans le contexte de données? Essayez
Console.WriteLine(db.Mapping.GetTables().Count();
? Une cartographie n'est pas la même chose qu'un tableau. - Exactement! Il n'y a pas de correspondance dans le contexte de données, mais le count() renvoie un nombre lié à la mappages compter que j'ai après avoir fait glisser certaines mises en correspondance dans le concepteur. Merci!
Vous devez vous connecter pour publier un commentaire.
Ok, jetons un oeil à certains de ces lignes:
C'est parfaitement normal et fine appel à un constructeur. Depuis DataContext implémente IDisposable, lorsque vous l'utilisez pour de vrai, envisager l'utilisation de l'instruction à l'aide.
Ne pas le faire. DataContext permettra d'ouvrir et de fermer la connexion quand il en a besoin.
Hmm, peut-être il n'y a pas de tables dans la cartographie. Ne vous faites glisser une table sur la surface du concepteur de l'explorateur de serveurs?
Plupart des gens seraient d'interroger une table au lieu de flâner dans les mappages. Considérer ce code à la place:
Voici une vidéo montrant comment faites glisser une table sur la surface du concepteur de l'explorateur de serveurs:
http://www.youtube.com/watch?v=z9L11qrw9gk
Essayez de changer votre chaîne de connexion pour ci-dessous