Поделиться через


Как получать информацию в режиме только для чтения (LINQ to SQL)

Обновлен: November 2007

Если не планируется изменять данные, можно повысить производительность запросов за счет поиска результатов, предназначенных только для чтения.

Чтобы реализовать обработку запросов только для чтения, установите для свойства ObjectTrackingEnabled значение false.

Bb399418.alert_note(ru-ru,VS.90).gifПримечание.

Если для свойства ObjectTrackingEnabled установлено значение false, то для свойства DeferredLoadingEnabled неявно устанавливается значение false.

Пример

В следующем примере кода извлекается коллекция дат приема на работу сотрудников, предназначенная только для чтения.

Dim db As New Northwnd("c:\northwnd.mdf")

db.ObjectTrackingEnabled = False
Dim hireQuery = _
    From emp In db.Employees _
    Select emp _
    Order By emp.HireDate

For Each empObj As Employee In hireQuery
    Console.WriteLine("EmpID = {0}, Date Hired = {1}", _
            empObj.EmployeeID, empObj.HireDate)
Next
Northwnd db = new Northwnd(@"c:\northwnd.mdf");

db.ObjectTrackingEnabled = false;
IOrderedQueryable<Employee> hireQuery =
    from emp in db.Employees
    orderby emp.HireDate
    select emp;

foreach (Employee empObj in hireQuery)
{
    Console.WriteLine("EmpID = {0}, Date Hired = {1}",
        empObj.EmployeeID, empObj.HireDate);
}

См. также

Основные понятия

Сравнение отложенной и немедленной загрузки (LINQ to SQL)

Другие ресурсы

Основные понятия о запросах в LINQ to SQL

Выполнение запросов к базе данных (LINQ to SQL)