Procédure : récupérer des informations en lecture seule (LINQ to SQL)
Lorsque vous ne projetez pas de modifier les données, vous pouvez augmenter les performances des requêtes en recherchant des résultats en lecture seule.
Implémentez le traitement en lecture seule en affectant la valeur false à ObjectTrackingEnabled.
Remarque |
---|
Lorsque la valeur false est affectée à ObjectTrackingEnabled, DeferredLoadingEnabled a implicitement la valeur false. |
Exemple
Le code suivant récupère une collection en lecture seule de dates d'embauche d'employés.
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);
}
Voir aussi
Concepts
Comparaison entre le chargement différé et le chargement immédiat (LINQ to SQL)