/// <summary>
 /// Ensures that the <see cref="DomainObject"/>'s data has been loaded into the its <see cref="ClientTransaction.ActiveTransaction"/>.
 /// If it hasn't, this method causes the objec's data to be loaded. If the object's data can't be found, an exception is thrown.
 /// </summary>
 /// <remarks>This method is only provided for compatibility, i.e. to make it easier to call the actual implementation.</remarks>
 /// <seealso cref="DomainObjectExtensions.EnsureDataAvailable"/>
 protected void EnsureDataAvailable()
 {
     DomainObjectExtensions.EnsureDataAvailable(this);
 }
 /// <summary>
 /// Ensures that the <see cref="DomainObject"/>'s data has been loaded into its <see cref="ClientTransaction.ActiveTransaction"/>.
 /// If it hasn't, this method causes the object's data to be loaded. The method returns a value indicating whether the object's data was found.
 /// </summary>
 /// <remarks>This method is only provided for compatibility, i.e. to make it easier to call the actual implementation.</remarks>
 /// <seealso cref="DomainObjectExtensions.TryEnsureDataAvailable"/>
 protected bool TryEnsureDataAvailable()
 {
     return(DomainObjectExtensions.TryEnsureDataAvailable(this));
 }
 /// <summary>
 /// Ensures that the <see cref="DomainObject"/> is included in the commit set of its <see cref="ClientTransaction.ActiveTransaction"/>.
 /// The object may not be in state <see cref="StateType.Deleted"/>, and if its state is <see cref="StateType.NotLoadedYet"/>,
 /// this method loads the object's data.
 /// </summary>
 /// <remarks>This method is only provided for compatibility, i.e. to make it easier to call the actual implementation.</remarks>
 /// <seealso cref="DomainObjectExtensions.RegisterForCommit"/>
 protected void RegisterForCommit()
 {
     DomainObjectExtensions.RegisterForCommit(this);
 }