2009-07-01 76 views
0

我的問題是關於從這個MSDN文章代碼示例:
Getting Started (LINQ to SQL)非常基本的LINQ到SQL問題

下面的代碼在文章中列出:

// 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); 
} 

如何「NW」創建?數據類型「Northwnd」來自哪裏?我該如何以這種方式訪問​​我的數據庫?我正在編寫一個訪問SQL服務器的應用程序,並且使用服務器資源管理器將相應的DBML文件添加到了我的項目中。但我不知道如何編寫這行代碼來訪問我的數據庫。

回答

1

DataContext的類型和所有實體從您的dbml文件自動生成的,你必須檢查的DataContext名設計者,右鍵點擊圖上的任何空白處,單擊屬性並檢查名稱屬性代碼生成部分。

我認爲這是早期的文章,現在在DataContext的命名缺省與DataContext的後綴(即:NorthwindDataContext,MyDatabaseDataContext,等...)

+4

完美答案!非常感謝!這正是我需要知道的。 – Giffyguy 2009-07-01 23:49:51

0

Northwnd是一個DataContext對象,你加入後您的dbml文件,這個類是由設計者爲你創建的,你可以使用它。

通過使用new進行初始化,您打開了一個到數據庫的連接。

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

將被LINQ2SQL提供程序翻譯成sql,並返回結果。