2009-07-01 6 views
0

Ma question concerne un exemple de code de cet article MSDN:
Getting Started (LINQ to SQL)LINQ Très basique à SQL Question

Le code suivant est listé dans l'article:

// Northwnd inherits from System.Data.Linq.DataContext. 
Northwnd nw = new Northwnd(@"northwnd.mdf"); 

var companyNameQuery = 
    from cust in nw.Customers 
    where cust.City == "London" 
    select cust.CompanyName; 

foreach (var customer in companyNameQuery) 
{ 
    Console.WriteLine(customer); 
} 

Comment est "nw" créé ? D'où vient le type de données "Northwnd"? Comment suis-je censé accéder à ma base de données de cette manière? J'écris une application qui accède à un serveur SQL, et j'ai ajouté le (s) fichier (s) DBML approprié (s) à mon projet en utilisant l'explorateur de serveur. Mais je n'ai aucune idée de comment écrire cette ligne de code pour accéder à ma base de données.

Répondre

1

Le type DataContext et toutes les entités sont générées à partir de votre fichier dbml, vous avez automatiquement pour vérifier le nom DataContext sur le concepteur, faites un clic droit sur un endroit vide sur le diagramme, cliquez Propriétés et vérifiez la Nom propriété sur la section Génération de code.

Je pense que était un premier article, maintenant les DataContext sont nommés par défaut avec le suffixe DataContext (ie: NorthwindDataContext, MyDatabaseDataContext, etc ...)

+4

Réponse parfaite! Merci beaucoup! C'est juste ce que j'avais besoin de savoir. – Giffyguy

+2

De rien! – CMS

0

Northwnd est un objet DataContext, et après avoir ajouté votre Fichier dbml, cette classe est créée pour vous par le concepteur et vous pouvez l'utiliser. En l'initialisant en utilisant nouveau, vous ouvrez une connexion à la base de données.

var companyNameQuery = 
    from cust in nw.Customers 
    where cust.City == "London" 
    select cust.CompanyName; 

sera traduit en SQL par le fournisseur LINQ2SQL, et vous renverra le résultat.