The requested page is not available for the requested platform. You are viewing the content for .NET Framework 4.5.2+ platform.
.NET Framework 4.5.2+
.NET Framework 4.5.2+
.NET Standard 2.0+

DelayedAttribute Class

Indicates that the property's value should not be loaded when a persistent object is being loaded. The property will be loaded the first time it is accessed.

Namespace: DevExpress.Xpo

Assembly: DevExpress.Xpo.v19.1.dll

Declaration

[AttributeUsage(AttributeTargets.Property, Inherited = true)]
public sealed class DelayedAttribute : Attribute
<AttributeUsage(AttributeTargets.Property, Inherited:=True)>
Public NotInheritable Class DelayedAttribute
    Inherits Attribute
[AttributeUsage(AttributeTargets.Property, Inherited = true)]
public sealed class DelayedAttribute : Attribute
<AttributeUsage(AttributeTargets.Property, Inherited:=True)>
Public NotInheritable Class DelayedAttribute
    Inherits Attribute

Remarks

Use this attribute to improve performance when loading and updating properties that are rarely used, or contain large amounts of data. For more information, see Delayed Loading.

Examples

The following example demonstrates how to delay the loading of the DelayedAttachment property and improve property value update performance, by enabling the DelayedAttribute.UpdateModifiedOnly property.

Note

This solution uses the XPDelayedProperty object explicitly and doesn't raise property change notifications in all scenarios. You may need to explicitly call the Session.Save method after modifying the property value to save changes. Alternatively, implement the delayed property as shown in the Delayed Loading article.

using DevExpress.Xpo;

public class Customer : XPObject {
   // ...
   private XPDelayedProperty document = new XPDelayedProperty();
   // Improve update performance for the property's value
   // by passing true as the attribute's
   // updateModifiedOnly parameter.
   [Delayed("document", true)]
   public Byte[] DelayedAttachment {
      get { return (Byte[])document.Value; }
      set { document.Value = value; }
   }
}

Inheritance

Object
Attribute
DelayedAttribute
See Also