Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП.doc
Скачиваний:
4
Добавлен:
27.10.2018
Размер:
134.14 Кб
Скачать

Добавление сборки System.Data.Linq

  1. В Обозревателе решений щелкните правой кнопкой мыши узел Ссылки и выберите команду Добавить ссылку.

  2. В диалоговом окне Добавление ссылки щелкните .NET, выберите сборку System.Data.Linq, а затем нажмите кнопку ОК.

Сборка будет добавлена в проект.

  1. Добавьте следующие директивы в начало Program.cs.

using System.Data.Linq;

using System.Data.Linq.Mapping;

Добавление файла кода Northwind в проект

При выполнении этих действий подразумевается, что для создания файла кода из учебной базы данных Northwind использовалось средство SQLMetal.Дополнительные сведения см. в разделе "Предварительные требования" ранее в этом руководстве.

Добавление файла кода northwind в проект

  1. В меню Проект выберите команду Добавить существующий элемент.

  2. В диалоговом окне Добавление существующего элемента перейдите к файлу c:\linqtest6\northwind.cs и нажмите кнопку Добавить.

Файл northwind.cs будет добавлен в проект.

Настройка подключения к базе данных

Сначала проверьте подключение к базе данных. Обратите особое внимание, что в имени базы данных — Northwnd — отсутствует буква "i". Если при выполнении следующих действий возникают ошибки, просмотрите файл northwind.cs, чтобы определить написание разделяемого класса Northwind.

Настройка и проверка подключения к базе данных

  1. Введите или вставьте следующий код в метод Main в классе Program.

// Use the following connection string.

Northwnd db = new Northwnd(@"c:\linqtest6\northwnd.mdf");

// Keep the console window open after activity stops.

Console.ReadLine();

  1. Чтобы проверить приложение на этом этапе, нажмите клавишу F5.

Откроется окно Консоль.

Чтобы закрыть приложение, в окне Консоль нажмите клавишу ВВОД либо в Visual Studio в меню Отладка выберите команду Остановить отладку.

Создание новой сущности

Создание новой сущности не представляет особых проблем. Для создания объектов (например, Customer) можно использовать ключевое слово new.

В этом и следующих разделах выполняются изменения только локального кэша. Изменения не будут отправлены в базу данных до тех пор, пока ближе к концу данного руководства не будет вызван SubmitChanges.

Добавление нового объекта сущностей Customer

  1. Создайте новый Customer, добавив перед Console.ReadLine();в методе Main следующий код.

// Create the new Customer object.

Customer newCust = new Customer();

newCust.CompanyName = "AdventureWorks Cafe";

newCust.CustomerID = "ADVCA";

// Add the customer to the Customers table.

db.Customers.InsertOnSubmit(newCust);

Console.WriteLine("\nCustomers matching CA before insert");

foreach (var c in db.Customers.Where(cust => cust.CustomerID.Contains("CA")))

{

Console.WriteLine("{0}, {1}, {2}",

c.CustomerID, c.CompanyName, c.Orders.Count);

}

  1. Нажмите клавишу F5 для отладки решения.

  2. Чтобы остановить отладку и продолжить выполнение других действий, в окне Консоль нажмите клавишу ВВОД.

Обновление сущности

При выполнении следующих действий будет извлечен объект Customer и изменено одно из его свойств.

Изменение имени клиента

  • Добавьте следующий код перед Console.ReadLine();:

// Query for specific customer.

// First() returns one object rather than a collection.

var existingCust =

(from c in db.Customers

where c.CustomerID == "ALFKI"

select c)

.First();

// Change the contact name of the customer.

existingCust.ContactName = "New Contact";

Удаление сущности

Используя тот же самый объект клиента, можно удалить первый заказ.

В следующем коде показано, как разорвать связь между строками и удалить строку из базы данных. Чтобы удаление объектов, добавьте следующий код перед Console.ReadLine.