Fastest Start for LINQ to SQL
Every now and then, I need to have a source of data for an example or proof of concept that I’m building. In my focus on LINQ to XML, Open XML, and now SharePoint, it’s pretty rare that I have to directly use a SQL database. I only do so maybe once or twice a year, and each time it comes up, I can’t remember where to get the database, and the easiest way to get started. This post is a cheat-sheet for the future - posting this just so that the next time it comes up, I can get going faster.
This blog is inactive.
New blog: EricWhite.com/blogBlog TOCDownload the Northwind and Pubs sample databases here.
Run the MSI. After it installs, you can find Northwind.mdb at “C:SQL Server 2000 Sample Databases”. The installation program creates a shortcut to this directory on the start menu.
When running Windows Server 2008, default security settings prevent opening a database at “C:SQL Server 2000 Sample Databases”. Create a directory in my Documents directory, such as NorthwindDatabase (C:UsersericwhitDocumentsNorthwindDatabase).
Copy NORTHWND.MDF to that directory. No need to copy NORTHWND.LDF – it’s just a log file, and will be re-created when the data connection is opened.
In Visual Studio, open the Server Explorer.
Right click on Data Connections, select Add Connection
Select Microsoft SQL Server Database File
Click Continue
Browse to C:UsersericwhitDocumentsNorthwindDatabase NORTHWND.MDF
Click Test Connection, to make sure that the connection works.
Click Open
Use Windows Authentication
Create a Windows Console project.
Add a new item to the project, Select Data in Categories, Select LINQ to SQL in Templates.
Name the item Northwind.dbml
Drag tables as appropriate on to the O/R designer surface.
The O/R designer will ask if I want to add the database file to my project, and copy it to the output directory. Not necessary.
Add the following two Using statements:
using System.Data.Linq;
using System.Data.Linq.Mapping;
Add the following code to Main:
DataContext db = new DataContext(@"C:UsersericwhitDocumentsNorthwindDatabaseNorthwnd.mdf");
Table<Customer> Customers = db.GetTable<Customer>();
var query =
from cust in Customers
where cust.City == "London"
select cust;
foreach (var cust in query)
Console.WriteLine("id = {0}, City = {1}", cust.CustomerID, cust.City);
To install adventure works database,
Download it here.
Install it in a sub folder of my Documents directory.
Add a data connection in Server Explorer.
Comments
Anonymous
October 30, 2008
Zeyad presented this morning on the Open XML SDK at PDC. You can view the video of the talk here – it’sAnonymous
April 23, 2009
http://www.microsoft.com/downloads/thankyou.aspx?familyId=06616212-0356-46a0-8da2-eebc53a68034&displayLang=enAnonymous
July 15, 2010
Thank you ! Finally I use linq on databese. People need algorithm of doing something that is all !