DataContext.DeferredLoadingEnabled Property


Gets or sets a value that indicates whether to delay-load one-to-many or one-to-one relationships.

 property bool DeferredLoadingEnabled { bool get(); void set(bool value); };
public bool DeferredLoadingEnabled { get; set; }
member this.DeferredLoadingEnabled : bool with get, set
Public Property DeferredLoadingEnabled As Boolean

Property Value

true if deferred loading is enabled; otherwise, false.


When the code accesses one of these relationships, null is returned if the relationship is one-to-one, and an empty collection is returned if it is one-to-many. The relationships can still be filled by setting the LoadOptions property.

The main scenario for this property is to enable you to extract a piece of the object model and send it out (for example, to a Web service).


If this property is set to false after a query has been executed, an exception is thrown. See the Valid Modes section below for more information.

Valid modes

Deferred loading requires object tracking. Only the following three modes are valid:

The flags may not be changed after a query has been executed. Any change after the execution of the first query that uses that DataContext throws an exception.

Applies to