Retrieving Data
Replace the contents of Program.cs with the code in Example 9-9, which uses the generated LINQ to SQL code to retrieve data from the three tables you've mapped using the designer.
Example 9-9. Using LINQ to SQL Designer-generated classes
using System; using System.Linq; using System.Text; namespace AdventureWorksDBML { // Main program public class Tester { static void Main() {AdventureWorksAddressDataContext dc = new
AdventureWorksAddressDataContext();
// Uncomment the statement below to show the
// SQL statement generated by LINQ to SQL.
// dc.Log = Console.Out;
// Find one customer record.
Customer donna = dc.Customers.Single(
c => c.FirstName == "Donna");
Console.WriteLine(donna);
// Find a list of customer records.
var cus tomerDs =
from customer in dc.Customers
where customer.FirstName.StartsWith("D")
orderby customer.FirstName, customer.LastName
select customer;
foreach (Customer customer in customerDs)
{ Console.WriteLine(customer); } } } // Add a method to the generated Customer class to // show formatted customer properties. public partial class Customer { public override string ToString() { StringBuilder sb = new StringBuilder(); sb.AppendFormat("{0} {1} {2}", FirstName, LastName, EmailAddress); foreach (CustomerAddress ca in CustomerAddresses) { sb.AppendFormat("\n\t{0}, {1}", ca.Address.AddressLine1, ca.Address.City); } sb.AppendLine(); return sb.ToString(); } } } Output: Donna Carreras donna0@adventure-works.com 12345 Sterling Avenue, ...
Get Programming .NET 3.5 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.