<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Csla</name>
    </assembly>
    <members>
        <member name="T:Csla.BusinessBase`1">
            <summary>
            This is the base class from which most business objects
            will be derived.
            </summary>
            <remarks>
            <para>
            This class is the core of the CSLA .NET framework. To create
            a business object, inherit from this class.
            </para><para>
            Please refer to 'Expert C# 2005 Business Objects' for
            full details on the use of this base class to create business
            objects.
            </para>
            </remarks>
            <typeparam name="T">Type of the business object being defined.</typeparam>
        </member>
        <member name="T:Csla.Core.BusinessBase">
            <summary>
            This is the non-generic base class from which most
            business objects will be derived.
            </summary>
            <remarks>
            See Chapter 3 for details.
            </remarks>
        </member>
        <member name="T:Csla.Core.UndoableBase">
            <summary>
            Implements n-level undo capabilities as
            described in Chapters 2 and 3.
            </summary>
        </member>
        <member name="T:Csla.Core.BindableBase">
            <summary>
            This class implements INotifyPropertyChanged
            in a serialization-safe manner.
            </summary>
        </member>
        <member name="M:Csla.Core.BindableBase.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.Core.BindableBase.OnIsDirtyChanged">
            <summary>
            Call this method to raise the PropertyChanged event
            for all object properties.
            </summary>
            <remarks>
            This method is for backward compatibility with
            CSLA .NET 1.x.
            </remarks>
        </member>
        <member name="M:Csla.Core.BindableBase.OnUnknownPropertyChanged">
            <summary>
            Call this method to raise the PropertyChanged event
            for all object properties.
            </summary>
            <remarks>
            This method is automatically called by MarkDirty. It
            actually raises PropertyChanged for an empty string,
            which tells data binding to refresh all properties.
            </remarks>
        </member>
        <member name="M:Csla.Core.BindableBase.OnPropertyChanged(System.String)">
            <summary>
            Call this method to raise the PropertyChanged event
            for a specific property.
            </summary>
            <param name="propertyName">Name of the property that
            has changed.</param>
            <remarks>
            This method may be called by properties in the business
            class to indicate the change in a specific property.
            </remarks>
        </member>
        <member name="E:Csla.Core.BindableBase.PropertyChanged">
            <summary>
            Implements a serialization-safe PropertyChanged event.
            </summary>
        </member>
        <member name="T:Csla.Core.IUndoableObject">
            <summary>
            Defines the methods required to participate
            in n-level undo within the CSLA .NET framework.
            </summary>
            <remarks>
            This interface is used by Csla.Core.UndoableBase
            to initiate begin, cancel and apply edit operations.
            </remarks>
        </member>
        <member name="T:Csla.Core.IBusinessObject">
            <summary>
            This is the core interface implemented
            by all CSLA .NET base classes.
            </summary>
        </member>
        <member name="M:Csla.Core.IUndoableObject.CopyState">
            <summary>
            Copies the state of the object and places the copy
            onto the state stack.
            </summary>
        </member>
        <member name="M:Csla.Core.IUndoableObject.UndoChanges">
            <summary>
            Restores the object's state to the most recently
            copied values from the state stack.
            </summary>
            <remarks>
            Restores the state of the object to its
            previous value by taking the data out of
            the stack and restoring it into the fields
            of the object.
            </remarks>
        </member>
        <member name="M:Csla.Core.IUndoableObject.AcceptChanges">
            <summary>
            Accepts any changes made to the object since the last
            state copy was made.
            </summary>
            <remarks>
            The most recent state copy is removed from the state
            stack and discarded, thus committing any changes made
            to the object's state.
            </remarks>
        </member>
        <member name="M:Csla.Core.UndoableBase.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.Core.UndoableBase.CopyStateComplete">
            <summary>
            This method is invoked after the CopyState
            operation is complete.
            </summary>
        </member>
        <member name="M:Csla.Core.UndoableBase.CopyState">
            <summary>
            Copies the state of the object and places the copy
            onto the state stack.
            </summary>
        </member>
        <member name="M:Csla.Core.UndoableBase.UndoChangesComplete">
            <summary>
            This method is invoked after the UndoChanges
            operation is complete.
            </summary>
        </member>
        <member name="M:Csla.Core.UndoableBase.UndoChanges">
            <summary>
            Restores the object's state to the most recently
            copied values from the state stack.
            </summary>
            <remarks>
            Restores the state of the object to its
            previous value by taking the data out of
            the stack and restoring it into the fields
            of the object.
            </remarks>
        </member>
        <member name="M:Csla.Core.UndoableBase.AcceptChangesComplete">
            <summary>
            This method is invoked after the AcceptChanges
            operation is complete.
            </summary>
        </member>
        <member name="M:Csla.Core.UndoableBase.AcceptChanges">
            <summary>
            Accepts any changes made to the object since the last
            state copy was made.
            </summary>
            <remarks>
            The most recent state copy is removed from the state
            stack and discarded, thus committing any changes made
            to the object's state.
            </remarks>
        </member>
        <member name="P:Csla.Core.UndoableBase.EditLevel">
            <summary>
            Returns the current edit level of the object.
            </summary>
        </member>
        <member name="T:Csla.Core.IEditableBusinessObject">
            <summary>
            Defines the common methods required by all
            editable CSLA single objects.
            </summary>
            <remarks>
            It is strongly recommended that the implementations
            of the methods in this interface be made Private
            so as to not clutter up the native interface of
            the collection objects.
            </remarks>
        </member>
        <member name="M:Csla.Core.IEditableBusinessObject.DeleteChild">
            <summary>
            Called by a parent object to mark the child
            for deferred deletion.
            </summary>
        </member>
        <member name="M:Csla.Core.IEditableBusinessObject.SetParent(Csla.Core.IParent)">
            <summary>
            Used by BusinessListBase as a child object is 
            created to tell the child object about its
            parent.
            </summary>
            <param name="parent">A reference to the parent collection object.</param>
        </member>
        <member name="M:Csla.Core.IEditableBusinessObject.Delete">
            <summary>
            Marks the object for deletion. The object will be deleted as part of the
            next save operation.
            </summary>
        </member>
        <member name="P:Csla.Core.IEditableBusinessObject.IsDirty">
            <summary>
            Returns <see langword="true" /> if this object's data has been changed.
            </summary>
            <remarks>
            <para>
            When an object's data is changed, CSLA .NET makes note of that change
            and considers the object to be 'dirty' or changed. This value is used to
            optimize data updates, since an unchanged object does not need to be
            updated into the database. All new objects are considered dirty. All objects
            marked for deletion are considered dirty.
            </para><para>
            Once an object's data has been saved to the database (inserted or updated)
            the dirty flag is cleared and the object is considered unchanged. Objects
            newly loaded from the database are also considered unchanged.
            </para>
            </remarks>
            <returns>A value indicating if this object's data has been changed.</returns>
        </member>
        <member name="P:Csla.Core.IEditableBusinessObject.IsValid">
            <summary>
            Returns <see langword="true" /> if the object is currently valid, <see langword="false" /> if the
            object has broken rules or is otherwise invalid.
            </summary>
            <remarks>
            <para>
            By default this property relies on the underling ValidationRules
            object to track whether any business rules are currently broken for this object.
            </para><para>
            You can override this property to provide more sophisticated
            implementations of the behavior. For instance, you should always override
            this method if your object has child objects, since the validity of this object
            is affected by the validity of all child objects.
            </para>
            </remarks>
            <returns>A value indicating if the object is currently valid.</returns>
        </member>
        <member name="P:Csla.Core.IEditableBusinessObject.IsDeleted">
            <summary>
            Returns <see langword="true" /> if this object is marked for deletion.
            </summary>
            <remarks>
            CSLA .NET supports both immediate and deferred deletion of objects. This
            property is part of the support for deferred deletion, where an object
            can be marked for deletion, but isn't actually deleted until the object
            is saved to the database. This property indicates whether or not the
            current object has been marked for deletion. If it is <see langword="true" />
            , the object will
            be deleted when it is saved to the database, otherwise it will be inserted
            or updated by the save operation.
            </remarks>
            <returns>A value indicating if this object is marked for deletion.</returns>
        </member>
        <member name="P:Csla.Core.IEditableBusinessObject.IsNew">
            <summary>
            Returns <see langword="true" /> if this is a new object, 
            <see langword="false" /> if it is a pre-existing object.
            </summary>
            <remarks>
            An object is considered to be new if its primary identifying (key) value 
            doesn't correspond to data in the database. In other words, 
            if the data values in this particular
            object have not yet been saved to the database the object is considered to
            be new. Likewise, if the object's data has been deleted from the database
            then the object is considered to be new.
            </remarks>
            <returns>A value indicating if this object is new.</returns>
        </member>
        <member name="P:Csla.Core.IEditableBusinessObject.IsSavable">
            <summary>
            Returns <see langword="true" /> if this object is both dirty and valid.
            </summary>
            <remarks>
            An object is considered dirty (changed) if 
            <see cref="P:Csla.BusinessBase.IsDirty" /> returns <see langword="true" />. It is
            considered valid if IsValid
            returns <see langword="true" />. The IsSavable property is
            a combination of these two properties. 
            </remarks>
            <returns>A value indicating if this object is both dirty and valid.</returns>
        </member>
        <member name="P:Csla.Core.IEditableBusinessObject.EditLevelAdded">
            <summary>
            For internal use only!!
            </summary>
            <remarks>
            Altering this value will almost certainly
            break your code. This property is for use
            by the parent collection only!
            </remarks>
        </member>
        <member name="P:Csla.Core.IEditableBusinessObject.EditLevel">
            <summary>
            Gets the current edit level of the object.
            </summary>
        </member>
        <member name="T:Csla.Security.IAuthorizeReadWrite">
            <summary>
            Defines the authorization interface through which an
            object can indicate which properties the current
            user can read and write.
            </summary>
        </member>
        <member name="M:Csla.Security.IAuthorizeReadWrite.CanWriteProperty(System.String)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to write the
            to the specified property.
            </summary>
            <returns><see langword="true" /> if write is allowed.</returns>
            <param name="propertyName">Name of the property to read.</param>
        </member>
        <member name="M:Csla.Security.IAuthorizeReadWrite.CanReadProperty(System.String)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            specified property.
            </summary>
            <returns><see langword="true" /> if read is allowed.</returns>
            <param name="propertyName">Name of the property to read.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.Core.BusinessBase.Initialize">
            <summary>
            Override this method to set up event handlers so user
            code in a partial class can respond to events raised by
            generated code.
            </summary>
        </member>
        <member name="M:Csla.Core.BusinessBase.MarkNew">
            <summary>
            Marks the object as being a new object. This also marks the object
            as being dirty and ensures that it is not marked for deletion.
            </summary>
            <remarks>
            <para>
            Newly created objects are marked new by default. You should call
            this method in the implementation of DataPortal_Update when the
            object is deleted (due to being marked for deletion) to indicate
            that the object no longer reflects data in the database.
            </para><para>
            If you override this method, make sure to call the base
            implementation after executing your new code.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.MarkOld">
            <summary>
            Marks the object as being an old (not new) object. This also
            marks the object as being unchanged (not dirty).
            </summary>
            <remarks>
            <para>
            You should call this method in the implementation of
            DataPortal_Fetch to indicate that an existing object has been
            successfully retrieved from the database.
            </para><para>
            You should call this method in the implementation of 
            DataPortal_Update to indicate that a new object has been successfully
            inserted into the database.
            </para><para>
            If you override this method, make sure to call the base
            implementation after executing your new code.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.MarkDeleted">
            <summary>
            Marks an object for deletion. This also marks the object
            as being dirty.
            </summary>
            <remarks>
            You should call this method in your business logic in the
            case that you want to have the object deleted when it is
            saved to the database.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.MarkDirty">
            <summary>
            Marks an object as being dirty, or changed.
            </summary>
            <remarks>
            <para>
            You should call this method in your business logic any time
            the object's internal data changes. Any time any instance
            variable changes within the object, this method should be called
            to tell CSLA .NET that the object's data has been changed.
            </para><para>
            Marking an object as dirty does two things. First it ensures
            that CSLA .NET will properly save the object as appropriate. Second,
            it causes CSLA .NET to tell Windows Forms data binding that the
            object's data has changed so any bound controls will update to
            reflect the new values.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.MarkDirty(System.Boolean)">
            <summary>
            Marks an object as being dirty, or changed.
            </summary>
            <param name="suppressEvent">
            <see langword="true" /> to supress the PropertyChanged event that is otherwise
            raised to indicate that the object's state has changed.
            </param>
        </member>
        <member name="M:Csla.Core.BusinessBase.PropertyHasChanged">
            <summary>
            Performs processing required when the current
            property has changed.
            </summary>
            <remarks>
            <para>
            This method calls CheckRules(propertyName), MarkDirty and
            OnPropertyChanged(propertyName). MarkDirty is called such
            that no event is raised for IsDirty, so only the specific
            property changed event for the current property is raised.
            </para><para>
            This implementation uses System.Diagnostics.StackTrace to
            determine the name of the current property, and so must be called
            directly from the property to be checked.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.PropertyHasChanged(System.String)">
            <summary>
            Performs processing required when a property
            has changed.
            </summary>
            <param name="propertyName">Name of the property that
            has changed.</param>
            <remarks>
            This method calls CheckRules(propertyName), MarkDirty and
            OnPropertyChanged(propertyName). MarkDirty is called such
            that no event is raised for IsDirty, so only the specific
            property changed event for the current property is raised.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.MarkClean">
            <summary>
            Forces the object's IsDirty flag to <see langword="false" />.
            </summary>
            <remarks>
            This method is normally called automatically and is
            not intended to be called manually.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.AddInstanceAuthorizationRules">
            <summary>
            Override this method to add authorization
            rules for your object's properties.
            </summary>
            <remarks>
            AddInstanceAuthorizationRules is automatically called by CSLA .NET
            when your object should associate per-instance authorization roles
            with its properties.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.AddAuthorizationRules">
            <summary>
            Override this method to add per-type
            authorization rules for your type's properties.
            </summary>
            <remarks>
            AddAuthorizationRules is automatically called by CSLA .NET
            when your object should associate per-type authorization roles
            with its properties.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.CanReadProperty(System.Boolean)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            calling property.
            </summary>
            <returns><see langword="true" /> if read is allowed.</returns>
            <param name="throwOnFalse">Indicates whether a negative
            result should cause an exception.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.CanReadProperty(System.String,System.Boolean)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            calling property.
            </summary>
            <returns><see langword="true" /> if read is allowed.</returns>
            <param name="propertyName">Name of the property to read.</param>
            <param name="throwOnFalse">Indicates whether a negative
            result should cause an exception.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.CanReadProperty">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            calling property.
            </summary>
            <returns><see langword="true" /> if read is allowed.</returns>
        </member>
        <member name="M:Csla.Core.BusinessBase.CanReadProperty(System.String)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            specified property.
            </summary>
            <param name="propertyName">Name of the property to read.</param>
            <returns><see langword="true" /> if read is allowed.</returns>
            <remarks>
            <para>
            If a list of allowed roles is provided then only users in those
            roles can read. If no list of allowed roles is provided then
            the list of denied roles is checked.
            </para><para>
            If a list of denied roles is provided then users in the denied
            roles are denied read access. All other users are allowed.
            </para><para>
            If neither a list of allowed nor denied roles is provided then
            all users will have read access.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.CanWriteProperty(System.Boolean)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to write the
            calling property.
            </summary>
            <returns><see langword="true" /> if write is allowed.</returns>
            <param name="throwOnFalse">Indicates whether a negative
            result should cause an exception.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.CanWriteProperty(System.String,System.Boolean)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to write the
            calling property.
            </summary>
            <returns><see langword="true" /> if write is allowed.</returns>
            <param name="propertyName">Name of the property to write.</param>
            <param name="throwOnFalse">Indicates whether a negative
            result should cause an exception.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.CanWriteProperty">
            <summary>
            Returns <see langword="true" /> if the user is allowed to write the
            calling property.
            </summary>
            <returns><see langword="true" /> if write is allowed.</returns>
        </member>
        <member name="M:Csla.Core.BusinessBase.CanWriteProperty(System.String)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to write the
            specified property.
            </summary>
            <param name="propertyName">Name of the property to write.</param>
            <returns><see langword="true" /> if write is allowed.</returns>
            <remarks>
            <para>
            If a list of allowed roles is provided then only users in those
            roles can write. If no list of allowed roles is provided then
            the list of denied roles is checked.
            </para><para>
            If a list of denied roles is provided then users in the denied
            roles are denied write access. All other users are allowed.
            </para><para>
            If neither a list of allowed nor denied roles is provided then
            all users will have write access.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.SetParent(Csla.Core.IParent)">
            <summary>
            Used by BusinessListBase as a child object is 
            created to tell the child object about its
            parent.
            </summary>
            <param name="parent">A reference to the parent collection object.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.System#ComponentModel#IEditableObject#BeginEdit">
            <summary>
            Allow data binding to start a nested edit on the object.
            </summary>
            <remarks>
            Data binding may call this method many times. Only the first
            call should be honored, so we have extra code to detect this
            and do nothing for subsquent calls.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.System#ComponentModel#IEditableObject#CancelEdit">
            <summary>
            Allow data binding to cancel the current edit.
            </summary>
            <remarks>
            Data binding may call this method many times. Only the first
            call to either IEditableObject.CancelEdit or 
            IEditableObject.EndEdit
            should be honored. We include extra code to detect this and do
            nothing for subsequent calls.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.System#ComponentModel#IEditableObject#EndEdit">
            <summary>
            Allow data binding to apply the current edit.
            </summary>
            <remarks>
            Data binding may call this method many times. Only the first
            call to either IEditableObject.EndEdit or 
            IEditableObject.CancelEdit
            should be honored. We include extra code to detect this and do
            nothing for subsequent calls.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.BeginEdit">
            <summary>
            Starts a nested edit on the object.
            </summary>
            <remarks>
            <para>
            When this method is called the object takes a snapshot of
            its current state (the values of its variables). This snapshot
            can be restored by calling CancelEdit
            or committed by calling ApplyEdit.
            </para><para>
            This is a nested operation. Each call to BeginEdit adds a new
            snapshot of the object's state to a stack. You should ensure that 
            for each call to BeginEdit there is a corresponding call to either 
            CancelEdit or ApplyEdit to remove that snapshot from the stack.
            </para><para>
            See Chapters 2 and 3 for details on n-level undo and state stacking.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.CancelEdit">
            <summary>
            Cancels the current edit process, restoring the object's state to
            its previous values.
            </summary>
            <remarks>
            Calling this method causes the most recently taken snapshot of the 
            object's state to be restored. This resets the object's values
            to the point of the last BeginEdit call.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.UndoChangesComplete">
            <summary>
            Called when an undo operation has completed.
            </summary>
            <remarks>
            This method resets the object as a result of
            deserialization and raises PropertyChanged events
            to notify data binding that the object has changed.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.ApplyEdit">
            <summary>
            Commits the current edit process.
            </summary>
            <remarks>
            Calling this method causes the most recently taken snapshot of the 
            object's state to be discarded, thus committing any changes made
            to the object's state since the last BeginEdit call.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.AcceptChangesComplete">
            <summary>
            Notifies the parent object (if any) that this
            child object's edits have been accepted.
            </summary>
        </member>
        <member name="M:Csla.Core.BusinessBase.MarkAsChild">
            <summary>
            Marks the object as being a child object.
            </summary>
        </member>
        <member name="M:Csla.Core.BusinessBase.Delete">
            <summary>
            Marks the object for deletion. The object will be deleted as part of the
            next save operation.
            </summary>
            <remarks>
            <para>
            CSLA .NET supports both immediate and deferred deletion of objects. This
            method is part of the support for deferred deletion, where an object
            can be marked for deletion, but isn't actually deleted until the object
            is saved to the database. This method is called by the UI developer to
            mark the object for deletion.
            </para><para>
            To 'undelete' an object, use n-level undo as discussed in Chapters 2 and 3.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.DeleteChild">
            <summary>
            Called by a parent object to mark the child
            for deferred deletion.
            </summary>
        </member>
        <member name="M:Csla.Core.BusinessBase.GetClone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>
            A new object containing the exact data of the original object.
            </returns>
        </member>
        <member name="M:Csla.Core.BusinessBase.AddInstanceBusinessRules">
            <summary>
            Override this method in your business class to
            be notified when you need to set up business
            rules.
            </summary>
            <remarks>
            This method is automatically called by CSLA .NET
            when your object should associate per-instance
            validation rules with its properties.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.AddBusinessRules">
            <summary>
            Override this method in your business class to
            be notified when you need to set up shared 
            business rules.
            </summary>
            <remarks>
            This method is automatically called by CSLA .NET
            when your object should associate per-type 
            validation rules with its properties.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_Create">
            <summary>
            Override this method to load a new business object with default
            values from the database.
            </summary>
            <remarks>
            Normally you will overload this method to accept a strongly-typed
            criteria parameter, rather than overriding the method with a
            loosely-typed criteria parameter.
            </remarks>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_Fetch(System.Object)">
            <summary>
            Override this method to allow retrieval of an existing business
            object based on data in the database.
            </summary>
            <remarks>
            Normally you will overload this method to accept a strongly-typed
            criteria parameter, rather than overriding the method with a
            loosely-typed criteria parameter.
            </remarks>
            <param name="criteria">An object containing criteria values to identify the object.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_Insert">
            <summary>
            Override this method to allow insertion of a business
            object.
            </summary>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_Update">
            <summary>
            Override this method to allow update of a business
            object.
            </summary>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_DeleteSelf">
            <summary>
            Override this method to allow deferred deletion of a business object.
            </summary>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_Delete(System.Object)">
            <summary>
            Override this method to allow immediate deletion of a business object.
            </summary>
            <param name="criteria">An object containing criteria values to identify the object.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_OnDataPortalInvoke(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal prior to calling the 
            requested DataPortal_XYZ method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_OnDataPortalInvokeComplete(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal after calling the 
            requested DataPortal_XYZ method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.DataPortal_OnDataPortalException(Csla.DataPortalEventArgs,System.Exception)">
            <summary>
            Called by the server-side DataPortal if an exception
            occurs during data access.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
            <param name="ex">The Exception thrown during data access.</param>
        </member>
        <member name="M:Csla.Core.BusinessBase.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
            <summary>
            This method is called on a newly deserialized object
            after deserialization is complete.
            </summary>
            <param name="context">Serialization context object.</param>
        </member>
        <member name="P:Csla.Core.BusinessBase.IsNew">
            <summary>
            Returns <see langword="true" /> if this is a new object, 
            <see langword="false" /> if it is a pre-existing object.
            </summary>
            <remarks>
            An object is considered to be new if its primary identifying (key) value 
            doesn't correspond to data in the database. In other words, 
            if the data values in this particular
            object have not yet been saved to the database the object is considered to
            be new. Likewise, if the object's data has been deleted from the database
            then the object is considered to be new.
            </remarks>
            <returns>A value indicating if this object is new.</returns>
        </member>
        <member name="P:Csla.Core.BusinessBase.IsDeleted">
            <summary>
            Returns <see langword="true" /> if this object is marked for deletion.
            </summary>
            <remarks>
            CSLA .NET supports both immediate and deferred deletion of objects. This
            property is part of the support for deferred deletion, where an object
            can be marked for deletion, but isn't actually deleted until the object
            is saved to the database. This property indicates whether or not the
            current object has been marked for deletion. If it is <see langword="true" />
            , the object will
            be deleted when it is saved to the database, otherwise it will be inserted
            or updated by the save operation.
            </remarks>
            <returns>A value indicating if this object is marked for deletion.</returns>
        </member>
        <member name="P:Csla.Core.BusinessBase.IsDirty">
            <summary>
            Returns <see langword="true" /> if this object's data has been changed.
            </summary>
            <remarks>
            <para>
            When an object's data is changed, CSLA .NET makes note of that change
            and considers the object to be 'dirty' or changed. This value is used to
            optimize data updates, since an unchanged object does not need to be
            updated into the database. All new objects are considered dirty. All objects
            marked for deletion are considered dirty.
            </para><para>
            Once an object's data has been saved to the database (inserted or updated)
            the dirty flag is cleared and the object is considered unchanged. Objects
            newly loaded from the database are also considered unchanged.
            </para>
            </remarks>
            <returns>A value indicating if this object's data has been changed.</returns>
        </member>
        <member name="P:Csla.Core.BusinessBase.IsSavable">
            <summary>
            Returns <see langword="true" /> if this object is both dirty and valid.
            </summary>
            <remarks>
            An object is considered dirty (changed) if 
            <see cref="P:Csla.BusinessBase.IsDirty" /> returns <see langword="true" />. It is
            considered valid if IsValid
            returns <see langword="true" />. The IsSavable property is
            a combination of these two properties. 
            </remarks>
            <returns>A value indicating if this object is both dirty and valid.</returns>
        </member>
        <member name="P:Csla.Core.BusinessBase.AuthorizationRules">
            <summary>
            Provides access to the AuthorizationRules object for this
            object.
            </summary>
            <remarks>
            Use this object to add a list of allowed and denied roles for
            reading and writing properties of the object. Typically these
            values are added once when the business object is instantiated.
            </remarks>
        </member>
        <member name="P:Csla.Core.BusinessBase.Parent">
            <summary>
            Provide access to the parent reference for use
            in child object code.
            </summary>
            <remarks>
            This value will be Nothing for root objects.
            </remarks>
        </member>
        <member name="P:Csla.Core.BusinessBase.IsChild">
            <summary>
            Returns <see langword="true" /> if this is a child (non-root) object.
            </summary>
        </member>
        <member name="P:Csla.Core.BusinessBase.EditLevelAdded">
            <summary>
            Gets or sets the current edit level of the
            object.
            </summary>
            <remarks>
            Allow the collection object to use the
            edit level as needed.
            </remarks>
        </member>
        <member name="P:Csla.Core.BusinessBase.ValidationRules">
            <summary>
            Provides access to the broken rules functionality.
            </summary>
            <remarks>
            This property is used within your business logic so you can
            easily call the AddRule() method to associate validation
            rules with your object's properties.
            </remarks>
        </member>
        <member name="P:Csla.Core.BusinessBase.IsValid">
            <summary>
            Returns <see langword="true" /> if the object is currently valid, <see langword="false" /> if the
            object has broken rules or is otherwise invalid.
            </summary>
            <remarks>
            <para>
            By default this property relies on the underling ValidationRules
            object to track whether any business rules are currently broken for this object.
            </para><para>
            You can override this property to provide more sophisticated
            implementations of the behavior. For instance, you should always override
            this method if your object has child objects, since the validity of this object
            is affected by the validity of all child objects.
            </para>
            </remarks>
            <returns>A value indicating if the object is currently valid.</returns>
        </member>
        <member name="P:Csla.Core.BusinessBase.BrokenRulesCollection">
            <summary>
            Provides access to the readonly collection of broken business rules
            for this object.
            </summary>
            <returns>A Csla.Validation.RulesCollection object.</returns>
        </member>
        <member name="T:Csla.Core.ISavable">
            <summary>
            Specifies that the object can save
            itself.
            </summary>
        </member>
        <member name="M:Csla.Core.ISavable.Save">
            <summary>
            Saves the object to the database.
            </summary>
            <returns>A new object containing the saved values.</returns>
        </member>
        <member name="E:Csla.Core.ISavable.Saved">
            <summary>
            Event raised when an object has been saved.
            </summary>
        </member>
        <member name="M:Csla.BusinessBase`1.GetIdValue">
            <summary>
            Override this method to return a unique identifying
            value for this object.
            </summary>
            <remarks>
            If you can not provide a unique identifying value, it
            is best if you can generate such a unique value (even
            temporarily). If you can not do that, then return 
            <see langword="Nothing"/> and then manually override the
            <see cref="M:Csla.BusinessBase`1.Equals(System.Object)"/>, <see cref="M:Csla.BusinessBase`1.GetHashCode"/> and
            <see cref="M:Csla.BusinessBase`1.ToString"/> methods in your business object.
            </remarks>
        </member>
        <member name="M:Csla.BusinessBase`1.Equals(System.Object)">
            <summary>
            Compares this object for equality with another object, using
            the results of <see cref="M:Csla.BusinessBase`1.GetIdValue"/> to determine
            equality.
            </summary>
            <param name="obj">The object to be compared.</param>
        </member>
        <member name="M:Csla.BusinessBase`1.GetHashCode">
            <summary>
            Returns a hash code value for this object, based on
            the results of <see cref="M:Csla.BusinessBase`1.GetIdValue"/>.
            </summary>
        </member>
        <member name="M:Csla.BusinessBase`1.ToString">
            <summary>
            Returns a text representation of this object by
            returning the <see cref="M:Csla.BusinessBase`1.GetIdValue"/> value
            in text form.
            </summary>
        </member>
        <member name="M:Csla.BusinessBase`1.Clone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>
            A new object containing the exact data of the original object.
            </returns>
        </member>
        <member name="M:Csla.BusinessBase`1.Save">
            <summary>
            Saves the object to the database.
            </summary>
            <remarks>
            <para>
            Calling this method starts the save operation, causing the object
            to be inserted, updated or deleted within the database based on the
            object's current state.
            </para><para>
            If <see cref="P:Csla.Core.BusinessBase.IsDeleted"/> is <see langword="true"/>
            the object will be deleted. Otherwise, if <see cref="P:Csla.Core.BusinessBase.IsNew"/> 
            is <see langword="true"/> the object will be inserted. 
            Otherwise the object's data will be updated in the database.
            </para><para>
            All this is contingent on <see cref="P:Csla.Core.BusinessBase.IsDirty"/>. If
            this value is <see langword="false"/>, no data operation occurs. 
            It is also contingent on <see cref="P:Csla.Core.BusinessBase.IsValid"/>. 
            If this value is <see langword="false"/> an
            exception will be thrown to indicate that the UI attempted to save an
            invalid object.
            </para><para>
            It is important to note that this method returns a new version of the
            business object that contains any data updated during the save operation.
            You MUST update all object references to use this new version of the
            business object in order to have access to the correct object data.
            </para><para>
            You can override this method to add your own custom behaviors to the save
            operation. For instance, you may add some security checks to make sure
            the user can save the object. If all security checks pass, you would then
            invoke the base Save method via <c>base.Save()</c>.
            </para>
            </remarks>
            <returns>A new object containing the saved values.</returns>
        </member>
        <member name="M:Csla.BusinessBase`1.Save(System.Boolean)">
            <summary>
            Saves the object to the database, forcing
            IsNew to <see langword="false"/> and IsDirty to True.
            </summary>
            <param name="forceUpdate">
            If <see langword="true"/>, triggers overriding IsNew and IsDirty. 
            If <see langword="false"/> then it is the same as calling Save().
            </param>
            <returns>A new object containing the saved values.</returns>
            <remarks>
            This overload is designed for use in web applications
            when implementing the Update method in your 
            data wrapper object.
            </remarks>
        </member>
        <member name="M:Csla.BusinessBase`1.OnSaved(`0)">
            <summary>
            Raises the Saved event, indicating that the
            object has been saved, and providing a reference
            to the new object instance.
            </summary>
            <param name="newObject">The new object instance.</param>
        </member>
        <member name="E:Csla.BusinessBase`1.Saved">
            <summary>
            Event raised when an object has been saved.
            </summary>
        </member>
        <member name="T:Csla.BusinessListBase`2">
            <summary>
            This is the base class from which most business collections
            or lists will be derived.
            </summary>
            <typeparam name="T">Type of the business object being defined.</typeparam>
            <typeparam name="C">Type of the child objects contained in the list.</typeparam>
        </member>
        <member name="T:Csla.Core.ExtendedBindingList`1">
            <summary>
            Extends BindingList of T by adding extra
            events.
            </summary>
            <typeparam name="T">Type of item contained in list.</typeparam>
        </member>
        <member name="T:Csla.Core.IExtendedBindingList">
            <summary>
            Extends <see cref="T:System.ComponentModel.IBindingList"/> by adding extra
            events.
            </summary>
        </member>
        <member name="E:Csla.Core.IExtendedBindingList.RemovingItem">
            <summary>
            Event indicating that an item is being
            removed from the list.
            </summary>
        </member>
        <member name="M:Csla.Core.ExtendedBindingList`1.OnRemovingItem(`0)">
            <summary>
            Raise the RemovingItem event.
            </summary>
            <param name="removedItem">
            A reference to the item that 
            is being removed.
            </param>
        </member>
        <member name="M:Csla.Core.ExtendedBindingList`1.RemoveItem(System.Int32)">
            <summary>
            Remove the item at the
            specified index.
            </summary>
            <param name="index">
            The zero-based index of the item
            to remove.
            </param>
        </member>
        <member name="E:Csla.Core.ExtendedBindingList`1.RemovingItem">
            <summary>
            Implements a serialization-safe RemovingItem event.
            </summary>
        </member>
        <member name="T:Csla.Core.IEditableCollection">
            <summary>
            Defines the common methods required by all
            editable CSLA collection objects.
            </summary>
            <remarks>
            It is strongly recommended that the implementations
            of the methods in this interface be made Private
            so as to not clutter up the native interface of
            the collection objects.
            </remarks>
        </member>
        <member name="M:Csla.Core.IEditableCollection.RemoveChild(Csla.Core.IEditableBusinessObject)">
            <summary>
            Removes the specified child from the parent
            collection.
            </summary>
            <param name="child">Child object to be removed.</param>
        </member>
        <member name="T:Csla.Core.IParent">
            <summary>
            Defines the interface that must be implemented
            by any business object that contains child
            objects.
            </summary>
        </member>
        <member name="M:Csla.Core.IParent.RemoveChild(Csla.Core.IEditableBusinessObject)">
            <summary>
            This method is called by a child object when it
            wants to be removed from the collection.
            </summary>
            <param name="child">The child object to remove.</param>
        </member>
        <member name="M:Csla.Core.IParent.ApplyEditChild(Csla.Core.IEditableBusinessObject)">
            <summary>
            Override this method to be notified when a child object's
            <see cref="M:Csla.Core.BusinessBase.ApplyEdit"/> method has
            completed.
            </summary>
            <param name="child">The child object that was edited.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.BusinessListBase`2.Initialize">
            <summary>
            Override this method to set up event handlers so user
            code in a partial class can respond to events raised by
            generated code.
            </summary>
        </member>
        <member name="M:Csla.BusinessListBase`2.BeginEdit">
            <summary>
            Starts a nested edit on the object.
            </summary>
            <remarks>
            <para>
            When this method is called the object takes a snapshot of
            its current state (the values of its variables). This snapshot
            can be restored by calling <see cref="M:Csla.BusinessListBase`2.CancelEdit"/>
            or committed by calling <see cref="M:Csla.BusinessListBase`2.ApplyEdit"/>.
            </para><para>
            This is a nested operation. Each call to BeginEdit adds a new
            snapshot of the object's state to a stack. You should ensure that 
            for each call to BeginEdit there is a corresponding call to either 
            CancelEdit or ApplyEdit to remove that snapshot from the stack.
            </para><para>
            See Chapters 2 and 3 for details on n-level undo and state stacking.
            </para><para>
            This method triggers the copying of all child object states.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.BusinessListBase`2.CancelEdit">
            <summary>
            Cancels the current edit process, restoring the object's state to
            its previous values.
            </summary>
            <remarks>
            Calling this method causes the most recently taken snapshot of the 
            object's state to be restored. This resets the object's values
            to the point of the last <see cref="M:Csla.BusinessListBase`2.BeginEdit"/>
            call.
            <para>
            This method triggers an undo in all child objects.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.BusinessListBase`2.ApplyEdit">
            <summary>
            Commits the current edit process.
            </summary>
            <remarks>
            Calling this method causes the most recently taken snapshot of the 
            object's state to be discarded, thus committing any changes made
            to the object's state since the last 
            <see cref="M:Csla.BusinessListBase`2.BeginEdit"/> call.
            <para>
            This method triggers an <see cref="M:Csla.Core.BusinessBase.ApplyEdit"/>
             in all child objects.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.BusinessListBase`2.EditChildComplete(Csla.Core.IEditableBusinessObject)">
            <summary>
            Override this method to be notified when a child object's
            <see cref="M:Csla.Core.BusinessBase.ApplyEdit"/> method has
            completed.
            </summary>
            <param name="child">The child object that was edited.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.ContainsDeleted(`1)">
            <summary>
            Returns <see langword="true"/> if the internal deleted list
            contains the specified child object.
            </summary>
            <param name="item">Child object to check.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.Csla#Core#IEditableCollection#RemoveChild(Csla.Core.IEditableBusinessObject)">
            <summary>
            This method is called by a child object when it
            wants to be removed from the collection.
            </summary>
            <param name="child">The child object to remove.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.Csla#Core#IParent#RemoveChild(Csla.Core.IEditableBusinessObject)">
            <summary>
            This method is called by a child object when it
            wants to be removed from the collection.
            </summary>
            <param name="child">The child object to remove.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.InsertItem(System.Int32,`1)">
            <summary>
            Sets the edit level of the child object as it is added.
            </summary>
            <param name="index">Index of the item to insert.</param>
            <param name="item">Item to insert.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.RemoveItem(System.Int32)">
            <summary>
            Marks the child object for deletion and moves it to
            the collection of deleted objects.
            </summary>
            <param name="index">Index of the item to remove.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.ClearItems">
            <summary>
            Clears the collection, moving all active
            items to the deleted list.
            </summary>
        </member>
        <member name="M:Csla.BusinessListBase`2.SetItem(System.Int32,`1)">
            <summary>
            Replaces the item at the specified index with
            the specified item, first moving the original
            item to the deleted list.
            </summary>
            <param name="index">The zero-based index of the item to replace.</param>
            <param name="item">
            The new value for the item at the specified index. 
            The value can be null for reference types.
            </param>
            <remarks></remarks>
        </member>
        <member name="M:Csla.BusinessListBase`2.MarkAsChild">
            <summary>
            Marks the object as being a child object.
            </summary>
            <remarks>
            <para>
            By default all business objects are 'parent' objects. This means
            that they can be directly retrieved and updated into the database.
            </para><para>
            We often also need child objects. These are objects which are contained
            within other objects. For instance, a parent Invoice object will contain
            child LineItem objects.
            </para><para>
            To create a child object, the MarkAsChild method must be called as the
            object is created. Please see Chapter 7 for details on the use of the
            MarkAsChild method.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.BusinessListBase`2.GetClone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>A new object containing the exact data of the original object.</returns>
        </member>
        <member name="M:Csla.BusinessListBase`2.Clone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>A new object containing the exact data of the original object.</returns>
        </member>
        <member name="M:Csla.BusinessListBase`2.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
            <summary>
            This method is called on a newly deserialized object
            after deserialization is complete.
            </summary>
        </member>
        <member name="M:Csla.BusinessListBase`2.Save">
            <summary>
            Saves the object to the database.
            </summary>
            <remarks>
            <para>
            Calling this method starts the save operation, causing the all child
            objects to be inserted, updated or deleted within the database based on the
            each object's current state.
            </para><para>
            All this is contingent on <see cref="P:Csla.BusinessListBase`2.IsDirty"/>. If
            this value is <see langword="false"/>, no data operation occurs. 
            It is also contingent on <see cref="P:Csla.BusinessListBase`2.IsValid"/>. If this value is 
            <see langword="false"/> an exception will be thrown to 
            indicate that the UI attempted to save an invalid object.
            </para><para>
            It is important to note that this method returns a new version of the
            business collection that contains any data updated during the save operation.
            You MUST update all object references to use this new version of the
            business collection in order to have access to the correct object data.
            </para><para>
            You can override this method to add your own custom behaviors to the save
            operation. For instance, you may add some security checks to make sure
            the user can save the object. If all security checks pass, you would then
            invoke the base Save method via <c>MyBase.Save()</c>.
            </para>
            </remarks>
            <returns>A new object containing the saved values.</returns>
        </member>
        <member name="M:Csla.BusinessListBase`2.DataPortal_Create">
            <summary>
            Override this method to load a new business object with default
            values from the database.
            </summary>
        </member>
        <member name="M:Csla.BusinessListBase`2.DataPortal_Fetch(System.Object)">
            <summary>
            Override this method to allow retrieval of an existing business
            object based on data in the database.
            </summary>
            <param name="criteria">An object containing criteria values to identify the object.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.DataPortal_Update">
            <summary>
            Override this method to allow update of a business
            object.
            </summary>
        </member>
        <member name="M:Csla.BusinessListBase`2.DataPortal_Delete(System.Object)">
            <summary>
            Override this method to allow immediate deletion of a business object.
            </summary>
            <param name="criteria">An object containing criteria values to identify the object.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.DataPortal_OnDataPortalInvoke(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal prior to calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.DataPortal_OnDataPortalInvokeComplete(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal after calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.DataPortal_OnDataPortalException(Csla.DataPortalEventArgs,System.Exception)">
            <summary>
            Called by the server-side DataPortal if an exception
            occurs during data access.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
            <param name="ex">The Exception thrown during data access.</param>
        </member>
        <member name="M:Csla.BusinessListBase`2.OnSaved(`0)">
            <summary>
            Raises the <see cref="E:Csla.BusinessListBase`2.Saved"/> event, indicating that the
            object has been saved, and providing a reference
            to the new object instance.
            </summary>
            <param name="newObject">The new object instance.</param>
        </member>
        <member name="P:Csla.BusinessListBase`2.IsDirty">
            <summary>
            Gets a value indicating whether this object's data has been changed.
            </summary>
        </member>
        <member name="P:Csla.BusinessListBase`2.IsValid">
            <summary>
            Gets a value indicating whether this object is currently in
            a valid state (has no broken validation rules).
            </summary>
        </member>
        <member name="P:Csla.BusinessListBase`2.DeletedList">
            <summary>
            A collection containing all child objects marked
            for deletion.
            </summary>
        </member>
        <member name="P:Csla.BusinessListBase`2.EditLevel">
            <summary>
            Returns the current edit level of the object.
            </summary>
        </member>
        <member name="P:Csla.BusinessListBase`2.IsChild">
            <summary>
            Indicates whether this collection object is a child object.
            </summary>
            <returns>True if this is a child object.</returns>
        </member>
        <member name="E:Csla.BusinessListBase`2.Saved">
            <summary>
            Event raised when an object has been saved.
            </summary>
        </member>
        <member name="T:Csla.CommandBase">
            <summary>
            This is the base class from which command 
            objects will be derived.
            </summary>
            <remarks>
            <para>
            Command objects allow the execution of arbitrary server-side
            functionality. Most often, this involves the invocation of
            a stored procedure in the database, but can involve any other
            type of stateless, atomic call to the server instead.
            </para><para>
            To implement a command object, inherit from CommandBase and
            override the DataPortal_Execute method. In this method you can
            implement any server-side code as required.
            </para><para>
            To pass data to/from the server, use instance variables within
            the command object itself. The command object is instantiated on
            the client, and is passed by value to the server where the 
            DataPortal_Execute method is invoked. The command object is then
            returned to the client by value.
            </para>
            </remarks>
        </member>
        <member name="T:Csla.Core.ICommandObject">
            <summary>
            This interface is implemented by all
            Command objects.
            </summary>
        </member>
        <member name="M:Csla.CommandBase.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.CommandBase.Initialize">
            <summary>
            Override this method to set up event handlers so user
            code in a partial class can respond to events raised by
            generated code.
            </summary>
        </member>
        <member name="M:Csla.CommandBase.DataPortal_Execute">
            <summary>
            Override this method to implement any server-side code
            that is to be run when the command is executed.
            </summary>
        </member>
        <member name="M:Csla.CommandBase.DataPortal_OnDataPortalInvoke(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal prior to calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.CommandBase.DataPortal_OnDataPortalInvokeComplete(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal after calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.CommandBase.DataPortal_OnDataPortalException(Csla.DataPortalEventArgs,System.Exception)">
            <summary>
            Called by the server-side DataPortal if an exception
            occurs during server-side processing.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
            <param name="ex">The Exception thrown during processing.</param>
        </member>
        <member name="T:Csla.Core.IReportTotalRowCount">
            <summary>
            Implement this interface in a collection
            to report a total row count to
            <see cref="T:Csla.Web.CslaDataSource"/>, where that
            row count is different from the collection's
            normal Count property value.
            </summary>
            <remarks>
            This interface is used to provide paging
            support for web data binding through
            <see cref="T:Csla.Web.CslaDataSource"/>. You should
            implement this interface in your business
            collection class, along with windowed
            data loading, to provide efficient paging
            support.
            </remarks>
        </member>
        <member name="P:Csla.Core.IReportTotalRowCount.TotalRowCount">
            <summary>
            The total number of rows of available
            data.
            </summary>
        </member>
        <member name="T:Csla.Core.IReadOnlyCollection">
            <summary>
            Interface implemented by all read-only collection
            classes.
            </summary>
        </member>
        <member name="T:Csla.Core.IReadOnlyObject">
            <summary>
            Specifies that the object is a readonly
            business object.
            </summary>
        </member>
        <member name="M:Csla.Core.IReadOnlyObject.CanReadProperty(System.String)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            calling property.
            </summary>
            <param name="propertyName">Name of the property to read.</param>
        </member>
        <member name="M:Csla.Core.ObjectCloner.Clone(System.Object)">
            <summary>
            Clones an object by using the
            <see cref="T:System.Runtime.Serialization.Formatters.Binary.BinaryFormatter"/>.
            </summary>
            <param name="obj">The object to clone.</param>
            <remarks>
            The object to be cloned must be serializable.
            </remarks>
        </member>
        <member name="T:Csla.Core.ReadOnlyBindingList`1">
            <summary>
            A readonly version of BindingList(Of T)
            </summary>
            <typeparam name="C">Type of item contained in the list.</typeparam>
            <remarks>
            This is a subclass of BindingList(Of T) that implements
            a readonly list, preventing adding and removing of items
            from the list. Use the IsReadOnly property
            to unlock the list for loading/unloading data.
            </remarks>
        </member>
        <member name="M:Csla.Core.ReadOnlyBindingList`1.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.Core.ReadOnlyBindingList`1.ClearItems">
            <summary>
            Prevents clearing the collection.
            </summary>
        </member>
        <member name="M:Csla.Core.ReadOnlyBindingList`1.AddNewCore">
            <summary>
            Prevents insertion of items into the collection.
            </summary>
        </member>
        <member name="M:Csla.Core.ReadOnlyBindingList`1.InsertItem(System.Int32,`0)">
            <summary>
            Prevents insertion of items into the collection.
            </summary>
            <param name="index">Index at which to insert the item.</param>
            <param name="item">Item to insert.</param>
        </member>
        <member name="M:Csla.Core.ReadOnlyBindingList`1.RemoveItem(System.Int32)">
            <summary>
            Removes the item at the specified index if the collection is
            not in readonly mode.
            </summary>
            <param name="index">Index of the item to remove.</param>
        </member>
        <member name="M:Csla.Core.ReadOnlyBindingList`1.SetItem(System.Int32,`0)">
            <summary>
            Replaces the item at the specified index with the 
            specified item if the collection is not in
            readonly mode.
            </summary>
            <param name="index">Index of the item to replace.</param>
            <param name="item">New item for the list.</param>
        </member>
        <member name="P:Csla.Core.ReadOnlyBindingList`1.IsReadOnly">
            <summary>
            Gets or sets a value indicating whether the list is readonly.
            </summary>
            <remarks>
            Subclasses can set this value to unlock the collection
            in order to alter the collection's data.
            </remarks>
            <value>True indicates that the list is readonly.</value>
        </member>
        <member name="T:Csla.Core.RemovingItemEventArgs">
            <summary>
            Contains event data for the RemovingItem
            event.
            </summary>
        </member>
        <member name="M:Csla.Core.RemovingItemEventArgs.#ctor(System.Object)">
            <summary>
            Create an instance of the object.
            </summary>
            <param name="removingItem">
            A reference to the item that was 
            removed from the list.
            </param>
        </member>
        <member name="P:Csla.Core.RemovingItemEventArgs.RemovingItem">
            <summary>
            Gets a reference to the item that was
            removed from the list.
            </summary>
        </member>
        <member name="T:Csla.Core.SavedEventArgs">
            <summary>
            Event arguments containing a reference
            to the new object that was returned
            as a result of the Save() operation.
            </summary>
        </member>
        <member name="M:Csla.Core.SavedEventArgs.#ctor(System.Object)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="newObject">
            The object that was returned as a
            result of the Save() operation.
            </param>
        </member>
        <member name="P:Csla.Core.SavedEventArgs.NewObject">
            <summary>
            Gets the object that was returned
            as a result of the Save() operation.
            </summary>
        </member>
        <member name="T:Csla.ApplicationContext">
            <summary>
            Provides consistent context information between the client
            and server DataPortal objects. 
            </summary>
        </member>
        <member name="M:Csla.ApplicationContext.Clear">
            <summary>
            Clears all context collections.
            </summary>
        </member>
        <member name="P:Csla.ApplicationContext.User">
            <summary>
            Get or set the current <see cref="T:System.Security.Principal.IPrincipal"/>
            object representing the user's identity.
            </summary>
            <remarks>
            This is discussed in Chapter 5. When running
            under IIS the HttpContext.Current.User value
            is used, otherwise the current Thread.CurrentPrincipal
            value is used.
            </remarks>
        </member>
        <member name="P:Csla.ApplicationContext.LocalContext">
            <summary>
            Returns the application-specific context data that
            is local to the current AppDomain.
            </summary>
            <remarks>
            <para>
            The return value is a HybridDictionary. If one does
            not already exist, and empty one is created and returned.
            </para><para>
            Note that data in this context is NOT transferred to and from
            the client and server.
            </para>
            </remarks>
        </member>
        <member name="P:Csla.ApplicationContext.ClientContext">
            <summary>
            Returns the application-specific context data provided
            by the client.
            </summary>
            <remarks>
            <para>
            The return value is a HybridDictionary. If one does
            not already exist, and empty one is created and returned.
            </para><para>
            Note that data in this context is transferred from
            the client to the server. No data is transferred from
            the server to the client.
            </para><para>
            This property is thread safe in a Windows client
            setting and on an application server. It is not guaranteed
            to be thread safe within the context of an ASP.NET
            client setting (i.e. in your ASP.NET UI).
            </para>
            </remarks>
        </member>
        <member name="P:Csla.ApplicationContext.GlobalContext">
            <summary>
            Returns the application-specific context data shared
            on both client and server.
            </summary>
            <remarks>
            <para>
            The return value is a HybridDictionary. If one does
            not already exist, and empty one is created and returned.
            </para><para>
            Note that data in this context is transferred to and from
            the client and server. Any objects or data in this context
            will be transferred bi-directionally across the network.
            </para>
            </remarks>
        </member>
        <member name="P:Csla.ApplicationContext.AuthenticationType">
            <summary>
            Returns the authentication type being used by the
            CSLA .NET framework.
            </summary>
            <value></value>
            <returns></returns>
            <remarks>
            This value is read from the application configuration
            file with the key value "CslaAuthentication". The value
            "Windows" indicates CSLA .NET should use Windows integrated
            (or AD) security. Any other value indicates the use of
            custom security derived from BusinessPrincipalBase.
            </remarks>
        </member>
        <member name="P:Csla.ApplicationContext.DataPortalProxy">
            <summary>
            Returns the channel or network protocol
            for the DataPortal server.
            </summary>
            <value>Fully qualified assembly/type name of the proxy class.</value>
            <returns></returns>
            <remarks>
            <para>
            This value is read from the application configuration
            file with the key value "CslaDataPortalProxy". 
            </para><para>
            The proxy class must implement Csla.Server.IDataPortalServer.
            </para><para>
            The value "Local" is a shortcut to running the DataPortal
            "server" in the client process.
            </para><para>
            Other built-in values include:
            <list>
            <item>
            <term>Csla,Csla.DataPortalClient.RemotingProxy</term>
            <description>Use .NET Remoting to communicate with the server</description>
            </item>
            <item>
            <term>Csla,Csla.DataPortalClient.EnterpriseServicesProxy</term>
            <description>Use Enterprise Services (DCOM) to communicate with the server</description>
            </item>
            <item>
            <term>Csla,Csla.DataPortalClient.WebServicesProxy</term>
            <description>Use Web Services (asmx) to communicate with the server</description>
            </item>
            </list>
            Each proxy type does require that the DataPortal server be hosted using the appropriate
            technology. For instance, Web Services and Remoting should be hosted in IIS, while
            Enterprise Services must be hosted in COM+.
            </para>
            </remarks>
        </member>
        <member name="P:Csla.ApplicationContext.DataPortalUrl">
            <summary>
            Returns the URL for the DataPortal server.
            </summary>
            <value></value>
            <returns></returns>
            <remarks>
            This value is read from the application configuration
            file with the key value "CslaDataPortalUrl". 
            </remarks>
        </member>
        <member name="P:Csla.ApplicationContext.ExecutionLocation">
            <summary>
            Returns a value indicating whether the application code
            is currently executing on the client or server.
            </summary>
        </member>
        <member name="T:Csla.ApplicationContext.ExecutionLocations">
            <summary>
            Enum representing the locations code can execute.
            </summary>
        </member>
        <member name="F:Csla.ApplicationContext.ExecutionLocations.Client">
            <summary>
            The code is executing on the client.
            </summary>
        </member>
        <member name="F:Csla.ApplicationContext.ExecutionLocations.Server">
            <summary>
            The code is executing on the application server.
            </summary>
        </member>
        <member name="T:Csla.DataPortal">
            <summary>
            This is the client-side DataPortal as described in
            Chapter 4.
            </summary>
        </member>
        <member name="M:Csla.DataPortal.Create``1(System.Object)">
            <summary>
            Called by a factory method in a business class to create 
            a new object, which is loaded with default
            values from the database.
            </summary>
            <typeparam name="T">Specific type of the business object.</typeparam>
            <param name="criteria">Object-specific criteria.</param>
            <returns>A new object, populated with default values.</returns>
        </member>
        <member name="M:Csla.DataPortal.Create``1">
            <summary>
            Called by a factory method in a business class to create 
            a new object, which is loaded with default
            values from the database.
            </summary>
            <typeparam name="T">Specific type of the business object.</typeparam>
            <returns>A new object, populated with default values.</returns>
        </member>
        <member name="M:Csla.DataPortal.Create(System.Object)">
            <summary>
            Called by a factory method in a business class to create 
            a new object, which is loaded with default
            values from the database.
            </summary>
            <param name="criteria">Object-specific criteria.</param>
            <returns>A new object, populated with default values.</returns>
        </member>
        <member name="M:Csla.DataPortal.Fetch``1(System.Object)">
            <summary>
            Called by a factory method in a business class to retrieve
            an object, which is loaded with values from the database.
            </summary>
            <typeparam name="T">Specific type of the business object.</typeparam>
            <param name="criteria">Object-specific criteria.</param>
            <returns>An object populated with values from the database.</returns>
        </member>
        <member name="M:Csla.DataPortal.Fetch``1">
            <summary>
            Called by a factory method in a business class to retrieve
            an object, which is loaded with values from the database.
            </summary>
            <typeparam name="T">Specific type of the business object.</typeparam>
            <returns>An object populated with values from the database.</returns>
        </member>
        <member name="M:Csla.DataPortal.Fetch(System.Object)">
            <summary>
            Called by a factory method in a business class to retrieve
            an object, which is loaded with values from the database.
            </summary>
            <param name="criteria">Object-specific criteria.</param>
            <returns>An object populated with values from the database.</returns>
        </member>
        <member name="M:Csla.DataPortal.Execute``1(``0)">
            <summary>
            Called to execute a Command object on the server.
            </summary>
            <remarks>
            <para>
            To be a Command object, the object must inherit from
            <see cref="T:Csla.CommandBase">CommandBase</see>.
            </para><para>
            Note that this method returns a reference to the updated business object.
            If the server-side DataPortal is running remotely, this will be a new and
            different object from the original, and all object references MUST be updated
            to use this new object.
            </para><para>
            On the server, the Command object's DataPortal_Execute() method will
            be invoked. Write any server-side code in that method.
            </para>
            </remarks>
            <typeparam name="T">Specific type of the Command object.</typeparam>
            <param name="obj">A reference to the Command object to be executed.</param>
            <returns>A reference to the updated Command object.</returns>
        </member>
        <member name="M:Csla.DataPortal.Execute(Csla.CommandBase)">
            <summary>
            Called to execute a Command object on the server.
            </summary>
            <remarks>
            <para>
            Note that this method returns a reference to the updated business object.
            If the server-side DataPortal is running remotely, this will be a new and
            different object from the original, and all object references MUST be updated
            to use this new object.
            </para><para>
            On the server, the Command object's DataPortal_Execute() method will
            be invoked. Write any server-side code in that method.
            </para>
            </remarks>
            <param name="obj">A reference to the Command object to be executed.</param>
            <returns>A reference to the updated Command object.</returns>
        </member>
        <member name="M:Csla.DataPortal.Update``1(``0)">
            <summary>
            Called by the business object's Save() method to
            insert, update or delete an object in the database.
            </summary>
            <remarks>
            Note that this method returns a reference to the updated business object.
            If the server-side DataPortal is running remotely, this will be a new and
            different object from the original, and all object references MUST be updated
            to use this new object.
            </remarks>
            <typeparam name="T">Specific type of the business object.</typeparam>
            <param name="obj">A reference to the business object to be updated.</param>
            <returns>A reference to the updated business object.</returns>
        </member>
        <member name="M:Csla.DataPortal.Update(System.Object)">
            <summary>
            Called by the business object's Save() method to
            insert, update or delete an object in the database.
            </summary>
            <remarks>
            Note that this method returns a reference to the updated business object.
            If the server-side DataPortal is running remotely, this will be a new and
            different object from the original, and all object references MUST be updated
            to use this new object.
            </remarks>
            <param name="obj">A reference to the business object to be updated.</param>
            <returns>A reference to the updated business object.</returns>
        </member>
        <member name="M:Csla.DataPortal.Delete(System.Object)">
            <summary>
            Called by a Shared (static in C#) method in the business class to cause
            immediate deletion of a specific object from the database.
            </summary>
            <param name="criteria">Object-specific criteria.</param>
        </member>
        <member name="E:Csla.DataPortal.DataPortalInvoke">
            <summary>
            Raised by DataPortal prior to calling the 
            requested server-side DataPortal method.
            </summary>
        </member>
        <member name="E:Csla.DataPortal.DataPortalInvokeComplete">
            <summary>
            Raised by DataPortal after the requested 
            server-side DataPortal method call is complete.
            </summary>
        </member>
        <member name="T:Csla.DataPortalClient.EnterpriseServicesProxy">
            <summary>
            Implements a data portal proxy to relay data portal
            calls to an application server hosted in COM+.
            </summary>
        </member>
        <member name="T:Csla.DataPortalClient.IDataPortalProxy">
            <summary>
            Interface implemented by client-side 
            data portal proxy objects.
            </summary>
        </member>
        <member name="T:Csla.Server.IDataPortalServer">
            <summary>
            Interface implemented by server-side data portal
            components.
            </summary>
        </member>
        <member name="M:Csla.Server.IDataPortalServer.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Create a new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.IDataPortalServer.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Get an existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.IDataPortalServer.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Update a business object.
            </summary>
            <param name="obj">Business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.IDataPortalServer.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Delete a business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="P:Csla.DataPortalClient.IDataPortalProxy.IsServerRemote">
            <summary>
            Get a value indicating whether this proxy will invoke
            a remote data portal server, or run the "server-side"
            data portal in the caller's process and AppDomain.
            </summary>
        </member>
        <member name="M:Csla.DataPortalClient.EnterpriseServicesProxy.GetServerObject">
            <summary>
            Override this method to return a reference to
            the server-side COM+ (ServicedComponent) object
            implementing the data portal server functionality.
            </summary>
        </member>
        <member name="M:Csla.DataPortalClient.EnterpriseServicesProxy.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to create a
            new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.EnterpriseServicesProxy.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to load an
            existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.EnterpriseServicesProxy.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to update a
            business object.
            </summary>
            <param name="obj">The business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.EnterpriseServicesProxy.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to delete a
            business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="P:Csla.DataPortalClient.EnterpriseServicesProxy.IsServerRemote">
            <summary>
            Get a value indicating whether this proxy will invoke
            a remote data portal server, or run the "server-side"
            data portal in the caller's process and AppDomain.
            </summary>
        </member>
        <member name="T:Csla.DataPortalClient.LocalProxy">
            <summary>
            Implements a data portal proxy to relay data portal
            calls to an application server hosted locally 
            in the client process and AppDomain.
            </summary>
        </member>
        <member name="M:Csla.DataPortalClient.LocalProxy.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to create a
            new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.LocalProxy.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to load an
            existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.LocalProxy.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to update a
            business object.
            </summary>
            <param name="obj">The business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.LocalProxy.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to delete a
            business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="P:Csla.DataPortalClient.LocalProxy.IsServerRemote">
            <summary>
            Get a value indicating whether this proxy will invoke
            a remote data portal server, or run the "server-side"
            data portal in the caller's process and AppDomain.
            </summary>
        </member>
        <member name="T:Csla.DataPortalClient.RemotingProxy">
            <summary>
            Implements a data portal proxy to relay data portal
            calls to a remote application server by using the
            .NET Remoting technology.
            </summary>
        </member>
        <member name="M:Csla.DataPortalClient.RemotingProxy.#cctor">
            <summary>
            Configure .NET Remoting to use a binary
            serialization technology even when using
            the HTTP channel. Also ensures that the
            user's Windows credentials are passed to
            the server appropriately.
            </summary>
        </member>
        <member name="M:Csla.DataPortalClient.RemotingProxy.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to create a
            new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.RemotingProxy.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to load an
            existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.RemotingProxy.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to update a
            business object.
            </summary>
            <param name="obj">The business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.RemotingProxy.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to delete a
            business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="P:Csla.DataPortalClient.RemotingProxy.IsServerRemote">
            <summary>
            Get a value indicating whether this proxy will invoke
            a remote data portal server, or run the "server-side"
            data portal in the caller's process and AppDomain.
            </summary>
        </member>
        <member name="T:Csla.DataPortalClient.WebServicesProxy">
            <summary>
            Implements a data portal proxy to relay data portal
            calls to a remote application server by using 
            Web services.
            </summary>
        </member>
        <member name="M:Csla.DataPortalClient.WebServicesProxy.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to create a
            new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.WebServicesProxy.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to load an
            existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.WebServicesProxy.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to update a
            business object.
            </summary>
            <param name="obj">The business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.DataPortalClient.WebServicesProxy.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by <see cref="T:Csla.DataPortal"/> to delete a
            business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="P:Csla.DataPortalClient.WebServicesProxy.IsServerRemote">
            <summary>
            Get a value indicating whether this proxy will invoke
            a remote data portal server, or run the "server-side"
            data portal in the caller's process and AppDomain.
            </summary>
        </member>
        <member name="T:Csla.CriteriaBase">
            <summary>
            Base type from which Criteria classes can be
            derived in a business class. 
            </summary>
        </member>
        <member name="M:Csla.CriteriaBase.#ctor(System.Type)">
            <summary>
            Initializes CriteriaBase with the type of
            business object to be created by the DataPortal.
            </summary>
            <param name="type">The type of the
            business object the data portal should create.</param>
        </member>
        <member name="P:Csla.CriteriaBase.ObjectType">
            <summary>
            Type of the business object to be instantiated by
            the server-side DataPortal. 
            </summary>
        </member>
        <member name="T:Csla.DataPortalEventArgs">
            <summary>
            Provides information about the DataPortal 
            call.
            </summary>
        </member>
        <member name="M:Csla.DataPortalEventArgs.#ctor(Csla.Server.DataPortalContext)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="dataPortalContext">
            Data portal context object.
            </param>
        </member>
        <member name="P:Csla.DataPortalEventArgs.DataPortalContext">
            <summary>
            The DataPortalContext object passed to the
            server-side DataPortal.
            </summary>
        </member>
        <member name="T:Csla.DataPortalException">
            <summary>
            This exception is returned for any errors occuring
            during the server-side DataPortal invocation.
            </summary>
        </member>
        <member name="M:Csla.DataPortalException.#ctor(System.String,System.Object)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="message">Text describing the exception.</param>
            <param name="businessObject">The business object
            as it was at the time of the exception.</param>
        </member>
        <member name="M:Csla.DataPortalException.#ctor(System.String,System.Exception,System.Object)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="message">Text describing the exception.</param>
            <param name="ex">Inner exception.</param>
            <param name="businessObject">The business object
            as it was at the time of the exception.</param>
        </member>
        <member name="M:Csla.DataPortalException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Creates an instance of the object for serialization.
            </summary>
            <param name="info">Serialiation info object.</param>
            <param name="context">Serialization context object.</param>
        </member>
        <member name="M:Csla.DataPortalException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serializes the object.
            </summary>
            <param name="info">Serialiation info object.</param>
            <param name="context">Serialization context object.</param>
        </member>
        <member name="P:Csla.DataPortalException.BusinessObject">
            <summary>
            Returns a reference to the business object
            from the server-side DataPortal.
            </summary>
            <remarks>
            Remember that this object may be in an invalid
            or undefined state. This is the business object
            (and any child objects) as it existed when the
            exception occured on the server. Thus the object
            state may have been altered by the server and
            may no longer reflect data in the database.
            </remarks>
        </member>
        <member name="P:Csla.DataPortalException.BusinessException">
            <summary>
            Gets the original server-side exception.
            </summary>
            <returns>An exception object.</returns>
            <remarks>
            When an exception occurs in business code behind
            the data portal, it is wrapped in a 
            <see cref="T:Csla.Server.DataPortalException"/>, which 
            is then wrapped in a 
            <see cref="T:Csla.DataPortalException"/>. This property
            unwraps and returns the original exception 
            thrown by the business code on the server.
            </remarks>
        </member>
        <member name="P:Csla.DataPortalException.StackTrace">
            <summary>
            Get the combined stack trace from the server
            and client.
            </summary>
        </member>
        <member name="T:Csla.Server.Hosts.EnterpriseServicesPortal">
            <summary>
            Exposes server-side DataPortal functionality
            through Enterprise Services.
            </summary>
        </member>
        <member name="M:Csla.Server.Hosts.EnterpriseServicesPortal.#cctor">
            <summary>
            Set up event handler to deal with
            serialization issue as discussed
            in Chapter 4.
            </summary>
        </member>
        <member name="M:Csla.Server.Hosts.EnterpriseServicesPortal.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Create a new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.Hosts.EnterpriseServicesPortal.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Get an existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.Hosts.EnterpriseServicesPortal.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Update a business object.
            </summary>
            <param name="obj">Business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.Hosts.EnterpriseServicesPortal.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Delete a business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="T:Csla.Server.Hosts.RemotingPortal">
            <summary>
            Exposes server-side DataPortal functionality
            through .NET Remoting.
            </summary>
        </member>
        <member name="M:Csla.Server.Hosts.RemotingPortal.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Create a new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.Hosts.RemotingPortal.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Get an existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.Hosts.RemotingPortal.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Update a business object.
            </summary>
            <param name="obj">Business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.Hosts.RemotingPortal.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Delete a business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="T:Csla.Server.Hosts.WebServicePortal">
            <summary>
            Exposes server-side DataPortal functionality
            through Web Services (asmx).
            </summary>
        </member>
        <member name="M:Csla.Server.Hosts.WebServicePortal.Create(System.Byte[])">
            <summary>
            Create a new business object.
            </summary>
            <param name="requestData">Byte stream containing <see cref="T:Csla.Server.Hosts.WebServicePortal.CreateRequest"/>.</param>
            <returns>Byte stream containing resulting object data.</returns>
        </member>
        <member name="M:Csla.Server.Hosts.WebServicePortal.Fetch(System.Byte[])">
            <summary>
            Get an existing business object.
            </summary>
            <param name="requestData">Byte stream containing <see cref="T:Csla.Server.Hosts.WebServicePortal.FetchRequest"/>.</param>
            <returns>Byte stream containing resulting object data.</returns>
        </member>
        <member name="M:Csla.Server.Hosts.WebServicePortal.Update(System.Byte[])">
            <summary>
            Update a business object.
            </summary>
            <param name="requestData">Byte stream containing <see cref="T:Csla.Server.Hosts.WebServicePortal.UpdateRequest"/>.</param>
            <returns>Byte stream containing resulting object data.</returns>
        </member>
        <member name="M:Csla.Server.Hosts.WebServicePortal.Delete(System.Byte[])">
            <summary>
            Delete a business object.
            </summary>
            <param name="requestData">Byte stream containing <see cref="T:Csla.Server.Hosts.WebServicePortal.DeleteRequest"/>.</param>
            <returns>Byte stream containing resulting object data.</returns>
        </member>
        <member name="T:Csla.Server.Hosts.WebServicePortal.CreateRequest">
            <summary>
            Request message for creating
            a new business object.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.CreateRequest.ObjectType">
            <summary>
            Type of business object to create.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.CreateRequest.Criteria">
            <summary>
            Criteria object describing business object.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.CreateRequest.Context">
            <summary>
            Data portal context from client.
            </summary>
        </member>
        <member name="T:Csla.Server.Hosts.WebServicePortal.FetchRequest">
            <summary>
            Request message for retrieving
            an existing business object.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.FetchRequest.ObjectType">
            <summary>
            Type of business object to create.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.FetchRequest.Criteria">
            <summary>
            Criteria object describing business object.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.FetchRequest.Context">
            <summary>
            Data portal context from client.
            </summary>
        </member>
        <member name="T:Csla.Server.Hosts.WebServicePortal.UpdateRequest">
            <summary>
            Request message for updating
            a business object.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.UpdateRequest.Object">
            <summary>
            Business object to be updated.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.UpdateRequest.Context">
            <summary>
            Data portal context from client.
            </summary>
        </member>
        <member name="T:Csla.Server.Hosts.WebServicePortal.DeleteRequest">
            <summary>
            Request message for deleting
            a business object.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.DeleteRequest.Criteria">
            <summary>
            Criteria object describing business object.
            </summary>
        </member>
        <member name="P:Csla.Server.Hosts.WebServicePortal.DeleteRequest.Context">
            <summary>
            Data portal context from client.
            </summary>
        </member>
        <member name="M:Csla.MethodCaller.GetCreateMethod(System.Type,System.Object)">
            <summary>
            Gets a reference to the DataPortal_Create method for
            the specified business object type.
            </summary>
            <param name="objectType">Type of the business object.</param>
            <param name="criteria">Criteria parameter value.</param>
            <remarks>
            If the criteria parameter value is an integer, that is a special
            flag indicating that the parameter should be considered missing
            (not Nothing/null - just not there).
            </remarks>
        </member>
        <member name="M:Csla.MethodCaller.GetFetchMethod(System.Type,System.Object)">
            <summary>
            Gets a reference to the DataPortal_Fetch method for
            the specified business object type.
            </summary>
            <param name="objectType">Type of the business object.</param>
            <param name="criteria">Criteria parameter value.</param>
            <remarks>
            If the criteria parameter value is an integer, that is a special
            flag indicating that the parameter should be considered missing
            (not Nothing/null - just not there).
            </remarks>
        </member>
        <member name="M:Csla.MethodCaller.CallMethodIfImplemented(System.Object,System.String,System.Object[])">
            <summary>
            Uses reflection to dynamically invoke a method
            if that method is implemented on the target object.
            </summary>
        </member>
        <member name="M:Csla.MethodCaller.CallMethod(System.Object,System.String,System.Object[])">
            <summary>
            Uses reflection to dynamically invoke a method,
            throwing an exception if it is not
            implemented on the target object.
            </summary>
        </member>
        <member name="M:Csla.MethodCaller.CallMethod(System.Object,System.Reflection.MethodInfo,System.Object[])">
            <summary>
            Uses reflection to dynamically invoke a method,
            throwing an exception if it is not
            implemented on the target object.
            </summary>
        </member>
        <member name="M:Csla.MethodCaller.GetMethod(System.Type,System.String,System.Object[])">
            <summary>
            Uses reflection to locate a matching method
            on the target object.
            </summary>
        </member>
        <member name="M:Csla.MethodCaller.GetObjectType(System.Object)">
            <summary>
            Returns a business object type based on
            the supplied criteria object.
            </summary>
        </member>
        <member name="M:Csla.MethodCaller.FindMethod(System.Type,System.String,System.Type[])">
            <summary>
            Returns information about the specified
            method, even if the parameter types are
            generic and are located in an abstract
            generic base class.
            </summary>
        </member>
        <member name="M:Csla.MethodCaller.FindMethod(System.Type,System.String,System.Int32)">
            <summary>
            Returns information about the specified
            method, finding the method based purely
            on the method name and number of parameters.
            </summary>
        </member>
        <member name="T:Csla.RunLocalAttribute">
            <summary>
            Marks a DataPortal_XYZ method to
            be run on the client even if the server-side
            DataPortal is configured for remote use.
            </summary>
        </member>
        <member name="T:Csla.Server.CallMethodException">
            <summary>
            This exception is returned from the 
            CallMethod method in the server-side DataPortal
            and contains the exception thrown by the
            underlying business object method that was
            being invoked.
            </summary>
        </member>
        <member name="M:Csla.Server.CallMethodException.#ctor(System.String,System.Exception)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="message">Message text describing the exception.</param>
            <param name="ex">Inner exception object.</param>
        </member>
        <member name="M:Csla.Server.CallMethodException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Creates an instance of the object for deserialization.
            </summary>
            <param name="info">Serialization info.</param>
            <param name="context">Serialiation context.</param>
        </member>
        <member name="M:Csla.Server.CallMethodException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serializes the object.
            </summary>
            <param name="info">Serialization info.</param>
            <param name="context">Serialization context.</param>
        </member>
        <member name="P:Csla.Server.CallMethodException.StackTrace">
            <summary>
            Get the stack trace from the original
            exception.
            </summary>
            <value></value>
            <returns></returns>
            <remarks></remarks>
        </member>
        <member name="T:Csla.Server.DataPortal">
            <summary>
            Implements the server-side DataPortal 
            message router as discussed
            in Chapter 4.
            </summary>
        </member>
        <member name="M:Csla.Server.DataPortal.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Create a new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.DataPortal.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Get an existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.DataPortal.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Update a business object.
            </summary>
            <param name="obj">Business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.DataPortal.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Delete a business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="T:Csla.Server.DataPortalContext">
            <summary>
            Provides consistent context information between the client
            and server DataPortal objects. 
            </summary>
        </member>
        <member name="M:Csla.Server.DataPortalContext.#ctor(System.Security.Principal.IPrincipal,System.Boolean)">
            <summary>
            Creates a new DataPortalContext object.
            </summary>
            <param name="principal">The current Principal object.</param>
            <param name="isRemotePortal">Indicates whether the DataPortal is remote.</param>
        </member>
        <member name="P:Csla.Server.DataPortalContext.Principal">
            <summary>
            The current principal object
            if CSLA security is being used.
            </summary>
        </member>
        <member name="P:Csla.Server.DataPortalContext.IsRemotePortal">
            <summary>
            Returns <see langword="true" /> if the 
            server-side DataPortal is running
            on a remote server via remoting.
            </summary>
        </member>
        <member name="P:Csla.Server.DataPortalContext.ClientCulture">
            <summary>
            The culture setting on the client
            workstation.
            </summary>
        </member>
        <member name="P:Csla.Server.DataPortalContext.ClientUICulture">
            <summary>
            The culture setting on the client
            workstation.
            </summary>
        </member>
        <member name="T:Csla.Server.DataPortalException">
            <summary>
            This exception is returned from the 
            server-side DataPortal and contains the exception
            and context data from the server.
            </summary>
        </member>
        <member name="M:Csla.Server.DataPortalException.#ctor(System.String,System.Exception,Csla.Server.DataPortalResult)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="message">Text describing the exception.</param>
            <param name="ex">Inner exception.</param>
            <param name="result">The data portal result object.</param>
        </member>
        <member name="M:Csla.Server.DataPortalException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Creates an instance of the object for serialization.
            </summary>
            <param name="info">Serialiation info object.</param>
            <param name="context">Serialization context object.</param>
        </member>
        <member name="M:Csla.Server.DataPortalException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serializes the object.
            </summary>
            <param name="info">Serialiation info object.</param>
            <param name="context">Serialization context object.</param>
        </member>
        <member name="P:Csla.Server.DataPortalException.Result">
            <summary>
            Returns the DataPortalResult object from the server.
            </summary>
        </member>
        <member name="P:Csla.Server.DataPortalException.StackTrace">
            <summary>
            Get the server-side stack trace from the
            original exception.
            </summary>
        </member>
        <member name="T:Csla.Server.DataPortalResult">
            <summary>
            Returns data from the server-side DataPortal to the 
            client-side DataPortal. Intended for internal CSLA .NET
            use only.
            </summary>
        </member>
        <member name="M:Csla.Server.DataPortalResult.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.Server.DataPortalResult.#ctor(System.Object)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="returnObject">Object to return as part
            of the result.</param>
        </member>
        <member name="P:Csla.Server.DataPortalResult.ReturnObject">
            <summary>
            The business object being returned from
            the server.
            </summary>
        </member>
        <member name="P:Csla.Server.DataPortalResult.GlobalContext">
            <summary>
            The global context being returned from
            the server.
            </summary>
        </member>
        <member name="T:Csla.Server.ServicedDataPortal">
            <summary>
            Implements the server-side Serviced 
            DataPortal described in Chapter 4.
            </summary>
        </member>
        <member name="M:Csla.Server.ServicedDataPortal.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Wraps a Create call in a ServicedComponent.
            </summary>
            <remarks>
            This method delegates to 
            <see cref="T:Csla.Server.SimpleDataPortal">SimpleDataPortal</see>
            but wraps that call within a COM+ transaction
            to provide transactional support.
            </remarks>
            <param name="objectType">A <see cref="T:System.Type">Type</see> object
            indicating the type of business object to be created.</param>
            <param name="criteria">A custom criteria object providing any
            extra information that may be required to properly create
            the object.</param>
            <param name="context">Context data from the client.</param>
            <returns>A populated business object.</returns>
        </member>
        <member name="M:Csla.Server.ServicedDataPortal.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Wraps a Fetch call in a ServicedComponent.
            </summary>
            <remarks>
            This method delegates to 
            <see cref="T:Csla.Server.SimpleDataPortal">SimpleDataPortal</see>
            but wraps that call within a COM+ transaction
            to provide transactional support.
            </remarks>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Object-specific criteria.</param>
            <param name="context">Object containing context data from client.</param>
            <returns>A populated business object.</returns>
        </member>
        <member name="M:Csla.Server.ServicedDataPortal.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Wraps an Update call in a ServicedComponent.
            </summary>
            <remarks>
            This method delegates to 
            <see cref="T:Csla.Server.SimpleDataPortal">SimpleDataPortal</see>
            but wraps that call within a COM+ transaction
            to provide transactional support.
            </remarks>
            <param name="obj">A reference to the object being updated.</param>
            <param name="context">Context data from the client.</param>
            <returns>A reference to the newly updated object.</returns>
        </member>
        <member name="M:Csla.Server.ServicedDataPortal.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Wraps a Delete call in a ServicedComponent.
            </summary>
            <remarks>
            This method delegates to 
            <see cref="T:Csla.Server.SimpleDataPortal">SimpleDataPortal</see>
            but wraps that call within a COM+ transaction
            to provide transactional support.
            </remarks>
            <param name="criteria">Object-specific criteria.</param>
            <param name="context">Context data from the client.</param>
        </member>
        <member name="T:Csla.Server.SimpleDataPortal">
            <summary>
            Implements the server-side DataPortal as discussed
            in Chapter 4.
            </summary>
        </member>
        <member name="M:Csla.Server.SimpleDataPortal.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Create a new business object.
            </summary>
            <param name="objectType">Type of business object to create.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.SimpleDataPortal.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Get an existing business object.
            </summary>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.SimpleDataPortal.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Update a business object.
            </summary>
            <param name="obj">Business object to update.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="M:Csla.Server.SimpleDataPortal.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Delete a business object.
            </summary>
            <param name="criteria">Criteria object describing business object.</param>
            <param name="context">
            <see cref="T:Csla.Server.DataPortalContext"/> object passed to the server.
            </param>
        </member>
        <member name="T:Csla.Server.TransactionalDataPortal">
            <summary>
            Implements the server-side Serviced 
            DataPortal described in Chapter 4.
            </summary>
        </member>
        <member name="M:Csla.Server.TransactionalDataPortal.Create(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Wraps a Create call in a TransactionScope
            </summary>
            <remarks>
            This method delegates to 
            <see cref="T:Csla.Server.SimpleDataPortal">SimpleDataPortal</see>
            but wraps that call within a
            <see cref="T:System.Transactions.TransactionScope">TransactionScope</see>
            to provide transactional support via
            System.Transactions.
            </remarks>
            <param name="objectType">A <see cref="T:System.Type">Type</see> object
            indicating the type of business object to be created.</param>
            <param name="criteria">A custom criteria object providing any
            extra information that may be required to properly create
            the object.</param>
            <param name="context">Context data from the client.</param>
            <returns>A populated business object.</returns>
        </member>
        <member name="M:Csla.Server.TransactionalDataPortal.Fetch(System.Type,System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by the client-side DataProtal to retrieve an object.
            </summary>
            <remarks>
            This method delegates to 
            <see cref="T:Csla.Server.SimpleDataPortal">SimpleDataPortal</see>
            but wraps that call within a
            <see cref="T:System.Transactions.TransactionScope">TransactionScope</see>
            to provide transactional support via
            System.Transactions.
            </remarks>
            <param name="objectType">Type of business object to retrieve.</param>
            <param name="criteria">Object-specific criteria.</param>
            <param name="context">Object containing context data from client.</param>
            <returns>A populated business object.</returns>
        </member>
        <member name="M:Csla.Server.TransactionalDataPortal.Update(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by the client-side DataPortal to update an object.
            </summary>
            <remarks>
            This method delegates to 
            <see cref="T:Csla.Server.SimpleDataPortal">SimpleDataPortal</see>
            but wraps that call within a
            <see cref="T:System.Transactions.TransactionScope">TransactionScope</see>
            to provide transactional support via
            System.Transactions.
            </remarks>
            <param name="obj">A reference to the object being updated.</param>
            <param name="context">Context data from the client.</param>
            <returns>A reference to the newly updated object.</returns>
        </member>
        <member name="M:Csla.Server.TransactionalDataPortal.Delete(System.Object,Csla.Server.DataPortalContext)">
            <summary>
            Called by the client-side DataPortal to delete an object.
            </summary>
            <remarks>
            This method delegates to 
            <see cref="T:Csla.Server.SimpleDataPortal">SimpleDataPortal</see>
            but wraps that call within a
            <see cref="T:System.Transactions.TransactionScope">TransactionScope</see>
            to provide transactional support via
            System.Transactions.
            </remarks>
            <param name="criteria">Object-specific criteria.</param>
            <param name="context">Context data from the client.</param>
        </member>
        <member name="T:Csla.TransactionalAttribute">
            <summary>
            Marks a DataPortal_XYZ method to run within
            the specified transactional context.
            </summary>
            <remarks>
            <para>
            Each business object method may be marked with this attribute
            to indicate which type of transactional technology should
            be used by the server-side DataPortal. The possible options
            are listed in the
            <see cref="T:Csla.TransactionalTypes">TransactionalTypes</see> enum.
            </para><para>
            If the Transactional attribute is not applied to a 
            DataPortal_XYZ method then the
            <see cref="F:Csla.TransactionalTypes.Manual">Manual</see> option
            is assumed.
            </para><para>
            If the Transactional attribute is applied with no explicit
            choice for transactionType then the
            <see cref="F:Csla.TransactionalTypes.EnterpriseServices">EnterpriseServices</see> 
            option is assumed.
            </para><para>
            Both the EnterpriseServices and TransactionScope options provide
            2-phase distributed transactional support.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.TransactionalAttribute.#ctor">
            <summary>
            Marks a method to run within a COM+
            transactional context.
            </summary>
        </member>
        <member name="M:Csla.TransactionalAttribute.#ctor(Csla.TransactionalTypes)">
            <summary>
            Marks a method to run within the specified
            type of transactional context.
            </summary>
            <param name="transactionType">
            Specifies the transactional context within which the
            method should run.</param>
        </member>
        <member name="P:Csla.TransactionalAttribute.TransactionType">
            <summary>
            Gets the type of transaction requested by the
            business object method.
            </summary>
        </member>
        <member name="T:Csla.TransactionalTypes">
            <summary>
            Provides a list of possible transactional
            technologies to be used by the server-side
            DataPortal.
            </summary>
        </member>
        <member name="F:Csla.TransactionalTypes.EnterpriseServices">
            <summary>
            Causes the server-side DataPortal to
            use Enterprise Services (COM+) transactions.
            </summary>
        </member>
        <member name="F:Csla.TransactionalTypes.TransactionScope">
            <summary>
            Causes the server-side DataPortal to
            use System.Transactions TransactionScope
            style transactions.
            </summary>
        </member>
        <member name="F:Csla.TransactionalTypes.Manual">
            <summary>
            Causes the server-side DataPortal to
            use no explicit transactional technology.
            </summary>
            <remarks>
            This option allows the business developer to
            implement their own transactions. Common options
            include ADO.NET transactions and System.Transactions
            TransactionScope.
            </remarks>
        </member>
        <member name="T:Csla.Data.DataMapper">
            <summary>
            Map data from a source into a target object
            by copying public property values.
            </summary>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Data.DataMapper.Map(System.Collections.IDictionary,System.Object)">
            <summary>
            Copies values from the source into the
            properties of the target.
            </summary>
            <param name="source">A name/value dictionary containing the source values.</param>
            <param name="target">An object with properties to be set from the dictionary.</param>
            <remarks>
            The key names in the dictionary must match the property names on the target
            object. Target properties may not be readonly or indexed.
            </remarks>
        </member>
        <member name="M:Csla.Data.DataMapper.Map(System.Collections.IDictionary,System.Object,System.String[])">
            <summary>
            Copies values from the source into the
            properties of the target.
            </summary>
            <param name="source">A name/value dictionary containing the source values.</param>
            <param name="target">An object with properties to be set from the dictionary.</param>
            <param name="ignoreList">A list of property names to ignore. 
            These properties will not be set on the target object.</param>
            <remarks>
            The key names in the dictionary must match the property names on the target
            object. Target properties may not be readonly or indexed.
            </remarks>
        </member>
        <member name="M:Csla.Data.DataMapper.Map(System.Collections.IDictionary,System.Object,System.Boolean,System.String[])">
            <summary>
            Copies values from the source into the
            properties of the target.
            </summary>
            <param name="source">A name/value dictionary containing the source values.</param>
            <param name="target">An object with properties to be set from the dictionary.</param>
            <param name="ignoreList">A list of property names to ignore. 
            These properties will not be set on the target object.</param>
            <param name="suppressExceptions">If <see langword="true" />, any exceptions will be supressed.</param>
            <remarks>
            The key names in the dictionary must match the property names on the target
            object. Target properties may not be readonly or indexed.
            </remarks>
        </member>
        <member name="M:Csla.Data.DataMapper.Map(System.Object,System.Object)">
            <summary>
            Copies values from the source into the
            properties of the target.
            </summary>
            <param name="source">An object containing the source values.</param>
            <param name="target">An object with properties to be set from the dictionary.</param>
            <remarks>
            The property names and types of the source object must match the property names and types
            on the target object. Source properties may not be indexed. 
            Target properties may not be readonly or indexed.
            </remarks>
        </member>
        <member name="M:Csla.Data.DataMapper.Map(System.Object,System.Object,System.String[])">
            <summary>
            Copies values from the source into the
            properties of the target.
            </summary>
            <param name="source">An object containing the source values.</param>
            <param name="target">An object with properties to be set from the dictionary.</param>
            <param name="ignoreList">A list of property names to ignore. 
            These properties will not be set on the target object.</param>
            <remarks>
            The property names and types of the source object must match the property names and types
            on the target object. Source properties may not be indexed. 
            Target properties may not be readonly or indexed.
            </remarks>
        </member>
        <member name="M:Csla.Data.DataMapper.Map(System.Object,System.Object,System.Boolean,System.String[])">
            <summary>
            Copies values from the source into the
            properties of the target.
            </summary>
            <param name="source">An object containing the source values.</param>
            <param name="target">An object with properties to be set from the dictionary.</param>
            <param name="ignoreList">A list of property names to ignore. 
            These properties will not be set on the target object.</param>
            <param name="suppressExceptions">If <see langword="true"/>, any exceptions will be supressed.</param>
            <remarks>
            <para>
            The property names and types of the source object must match the property names and types
            on the target object. Source properties may not be indexed. 
            Target properties may not be readonly or indexed.
            </para><para>
            Properties to copy are determined based on the source object. Any properties
            on the source object marked with the <see cref="T:System.ComponentModel.BrowsableAttribute"/> equal
            to false are ignored.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.Data.DataMapper.SetPropertyValue(System.Object,System.String,System.Object)">
            <summary>
            Sets an object's property with the specified value,
            coercing that value to the appropriate type if possible.
            </summary>
            <param name="target">Object containing the property to set.</param>
            <param name="propertyName">Name of the property to set.</param>
            <param name="value">Value to set into the property.</param>
        </member>
        <member name="T:Csla.Data.ObjectAdapter">
            <summary>
            An ObjectAdapter is used to convert data in an object 
            or collection into a DataTable.
            </summary>
        </member>
        <member name="M:Csla.Data.ObjectAdapter.Fill(System.Data.DataSet,System.Object)">
            <summary>
            Fills the DataSet with data from an object or collection.
            </summary>
            <remarks>
            The name of the DataTable being filled is will be the class name of
            the object acting as the data source. The
            DataTable will be inserted if it doesn't already exist in the DataSet.
            </remarks>
            <param name="ds">A reference to the DataSet to be filled.</param>
            <param name="source">A reference to the object or collection acting as a data source.</param>
        </member>
        <member name="M:Csla.Data.ObjectAdapter.Fill(System.Data.DataSet,System.String,System.Object)">
            <summary>
            Fills the DataSet with data from an object or collection.
            </summary>
            <remarks>
            The name of the DataTable being filled is specified as a parameter. The
            DataTable will be inserted if it doesn't already exist in the DataSet.
            </remarks>
            <param name="ds">A reference to the DataSet to be filled.</param>
            <param name="tableName"></param>
            <param name="source">A reference to the object or collection acting as a data source.</param>
        </member>
        <member name="M:Csla.Data.ObjectAdapter.Fill(System.Data.DataTable,System.Object)">
            <summary>
            Fills a DataTable with data values from an object or collection.
            </summary>
            <param name="dt">A reference to the DataTable to be filled.</param>
            <param name="source">A reference to the object or collection acting as a data source.</param>
        </member>
        <member name="T:Csla.Data.SafeDataReader">
            <summary>
            This is a DataReader that 'fixes' any null values before
            they are returned to our business code.
            </summary>
        </member>
        <member name="M:Csla.Data.SafeDataReader.#ctor(System.Data.IDataReader)">
            <summary>
            Initializes the SafeDataReader object to use data from
            the provided DataReader object.
            </summary>
            <param name="dataReader">The source DataReader object containing the data.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetString(System.String)">
            <summary>
            Gets a string value from the datareader.
            </summary>
            <remarks>
            Returns empty string for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetString(System.Int32)">
            <summary>
            Gets a string value from the datareader.
            </summary>
            <remarks>
            Returns empty string for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetValue(System.String)">
            <summary>
            Gets a value of type <see cref="T:System.Object"/> from the datareader.
            </summary>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetValue(System.Int32)">
            <summary>
            Gets a value of type <see cref="T:System.Object"/> from the datareader.
            </summary>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetInt32(System.String)">
            <summary>
            Gets an integer from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetInt32(System.Int32)">
            <summary>
            Gets an integer from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetDouble(System.String)">
            <summary>
            Gets a double from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetDouble(System.Int32)">
            <summary>
            Gets a double from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetSmartDate(System.String)">
            <summary>
            Gets a <see cref="T:Csla.SmartDate"/> from the datareader.
            </summary>
            <remarks>
            A null is converted into min possible date
            See Chapter 5 for more details on the SmartDate class.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetSmartDate(System.Int32)">
            <summary>
            Gets a <see cref="T:Csla.SmartDate"/> from the datareader.
            </summary>
            <remarks>
            A null is converted into the min possible date
            See Chapter 5 for more details on the SmartDate class.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetSmartDate(System.String,System.Boolean)">
            <summary>
            Gets a <see cref="T:Csla.SmartDate"/> from the datareader.
            </summary>
            <remarks>
            A null is converted into either the min or max possible date
            depending on the MinIsEmpty parameter. See Chapter 5 for more
            details on the SmartDate class.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
            <param name="minIsEmpty">
            A flag indicating whether the min or max 
            value of a data means an empty date.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetSmartDate(System.Int32,System.Boolean)">
            <summary>
            Gets a <see cref="T:Csla.SmartDate"/> from the datareader.
            </summary>
            <param name="i">Ordinal column position of the value.</param>
            <param name="minIsEmpty">
            A flag indicating whether the min or max 
            value of a data means an empty date.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetGuid(System.String)">
            <summary>
            Gets a Guid value from the datareader.
            </summary>
            <remarks>
            Returns Guid.Empty for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetGuid(System.Int32)">
            <summary>
            Gets a Guid value from the datareader.
            </summary>
            <remarks>
            Returns Guid.Empty for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.Read">
            <summary>
            Reads the next row of data from the datareader.
            </summary>
        </member>
        <member name="M:Csla.Data.SafeDataReader.NextResult">
            <summary>
            Moves to the next result set in the datareader.
            </summary>
        </member>
        <member name="M:Csla.Data.SafeDataReader.Close">
            <summary>
            Closes the datareader.
            </summary>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetBoolean(System.String)">
            <summary>
            Gets a boolean value from the datareader.
            </summary>
            <remarks>
            Returns <see langword="false" /> for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetBoolean(System.Int32)">
            <summary>
            Gets a boolean value from the datareader.
            </summary>
            <remarks>
            Returns <see langword="false" /> for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetByte(System.String)">
            <summary>
            Gets a byte value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetByte(System.Int32)">
            <summary>
            Gets a byte value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetBytes(System.String,System.Int64,System.Byte[],System.Int32,System.Int32)">
            <summary>
            Invokes the GetBytes method of the underlying datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
            <param name="buffer">Array containing the data.</param>
            <param name="bufferOffset">Offset position within the buffer.</param>
            <param name="fieldOffset">Offset position within the field.</param>
            <param name="length">Length of data to read.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetBytes(System.Int32,System.Int64,System.Byte[],System.Int32,System.Int32)">
            <summary>
            Invokes the GetBytes method of the underlying datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
            <param name="buffer">Array containing the data.</param>
            <param name="bufferOffset">Offset position within the buffer.</param>
            <param name="fieldOffset">Offset position within the field.</param>
            <param name="length">Length of data to read.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetChar(System.String)">
            <summary>
            Gets a char value from the datareader.
            </summary>
            <remarks>
            Returns Char.MinValue for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetChar(System.Int32)">
            <summary>
            Gets a char value from the datareader.
            </summary>
            <remarks>
            Returns Char.MinValue for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetChars(System.String,System.Int64,System.Char[],System.Int32,System.Int32)">
            <summary>
            Invokes the GetChars method of the underlying datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
            <param name="buffer">Array containing the data.</param>
            <param name="bufferOffset">Offset position within the buffer.</param>
            <param name="fieldOffset">Offset position within the field.</param>
            <param name="length">Length of data to read.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetChars(System.Int32,System.Int64,System.Char[],System.Int32,System.Int32)">
            <summary>
            Invokes the GetChars method of the underlying datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
            <param name="buffer">Array containing the data.</param>
            <param name="bufferOffset">Offset position within the buffer.</param>
            <param name="fieldOffset">Offset position within the field.</param>
            <param name="length">Length of data to read.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetData(System.String)">
            <summary>
            Invokes the GetData method of the underlying datareader.
            </summary>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetData(System.Int32)">
            <summary>
            Invokes the GetData method of the underlying datareader.
            </summary>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetDataTypeName(System.String)">
            <summary>
            Invokes the GetDataTypeName method of the underlying datareader.
            </summary>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetDataTypeName(System.Int32)">
            <summary>
            Invokes the GetDataTypeName method of the underlying datareader.
            </summary>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetDateTime(System.String)">
            <summary>
            Gets a date value from the datareader.
            </summary>
            <remarks>
            Returns DateTime.MinValue for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetDateTime(System.Int32)">
            <summary>
            Gets a date value from the datareader.
            </summary>
            <remarks>
            Returns DateTime.MinValue for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetDecimal(System.String)">
            <summary>
            Gets a decimal value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetDecimal(System.Int32)">
            <summary>
            Gets a decimal value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetFieldType(System.String)">
            <summary>
            Invokes the GetFieldType method of the underlying datareader.
            </summary>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetFieldType(System.Int32)">
            <summary>
            Invokes the GetFieldType method of the underlying datareader.
            </summary>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetFloat(System.String)">
            <summary>
            Gets a Single value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetFloat(System.Int32)">
            <summary>
            Gets a Single value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetInt16(System.String)">
            <summary>
            Gets a Short value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetInt16(System.Int32)">
            <summary>
            Gets a Short value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetInt64(System.String)">
            <summary>
            Gets a Long value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetInt64(System.Int32)">
            <summary>
            Gets a Long value from the datareader.
            </summary>
            <remarks>
            Returns 0 for null.
            </remarks>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetName(System.Int32)">
            <summary>
            Invokes the GetName method of the underlying datareader.
            </summary>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetOrdinal(System.String)">
            <summary>
            Gets an ordinal value from the datareader.
            </summary>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetSchemaTable">
            <summary>
            Invokes the GetSchemaTable method of the underlying datareader.
            </summary>
        </member>
        <member name="M:Csla.Data.SafeDataReader.GetValues(System.Object[])">
            <summary>
            Invokes the GetValues method of the underlying datareader.
            </summary>
            <param name="values">An array of System.Object to
            copy the values into.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.IsDBNull(System.Int32)">
            <summary>
            Invokes the IsDBNull method of the underlying datareader.
            </summary>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.Dispose(System.Boolean)">
            <summary>
            Disposes the object.
            </summary>
            <param name="disposing">True if called by
            the public Dispose method.</param>
        </member>
        <member name="M:Csla.Data.SafeDataReader.Dispose">
            <summary>
            Disposes the object.
            </summary>
        </member>
        <member name="M:Csla.Data.SafeDataReader.Finalize">
            <summary>
            Object finalizer.
            </summary>
        </member>
        <member name="P:Csla.Data.SafeDataReader.DataReader">
            <summary>
            Get a reference to the underlying data reader
            object that actually contains the data from
            the data source.
            </summary>
        </member>
        <member name="P:Csla.Data.SafeDataReader.Depth">
            <summary>
            Returns the depth property value from the datareader.
            </summary>
        </member>
        <member name="P:Csla.Data.SafeDataReader.FieldCount">
            <summary>
            Returns the FieldCount property from the datareader.
            </summary>
        </member>
        <member name="P:Csla.Data.SafeDataReader.IsClosed">
            <summary>
            Returns the IsClosed property value from the datareader.
            </summary>
        </member>
        <member name="P:Csla.Data.SafeDataReader.Item(System.String)">
            <summary>
            Returns a value from the datareader.
            </summary>
            <param name="name">Name of the column containing the value.</param>
        </member>
        <member name="P:Csla.Data.SafeDataReader.Item(System.Int32)">
            <summary>
            Returns a value from the datareader.
            </summary>
            <param name="i">Ordinal column position of the value.</param>
        </member>
        <member name="P:Csla.Data.SafeDataReader.RecordsAffected">
            <summary>
            Returns the RecordsAffected property value from the underlying datareader.
            </summary>
        </member>
        <member name="T:Csla.EditableRootListBase`1">
            <summary>
            This is the base class from which collections
            of editable root business objects should be
            derived.
            </summary>
            <typeparam name="T">
            Type of editable root object to contain within
            the collection.
            </typeparam>
            <remarks>
            <para>
            Your subclass should implement a factory method
            and should override or overload
            DataPortal_Fetch() to implement data retrieval.
            </para><para>
            Saving (inserts or updates) of items in the collection
            should be handled through the SaveItem() method on
            the collection. 
            </para><para>
            Removing an item from the collection
            through Remove() or RemoveAt() causes immediate deletion
            of the object, by calling the object's Delete() and
            Save() methods.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.EditableRootListBase`1.SaveItem(`0)">
            <summary>
            Saves the specified item in the list.
            </summary>
            <param name="item">
            Reference to the item to be saved.
            </param>
            <remarks>
            This method properly saves the child item,
            by making sure the item in the collection
            is properly replaced by the result of the
            Save() method call.
            </remarks>
        </member>
        <member name="M:Csla.EditableRootListBase`1.SaveItem(System.Int32)">
            <summary>
            Saves the specified item in the list.
            </summary>
            <param name="index">
            Index of the item to be saved.
            </param>
            <remarks>
            This method properly saves the child item,
            by making sure the item in the collection
            is properly replaced by the result of the
            Save() method call.
            </remarks>
        </member>
        <member name="M:Csla.EditableRootListBase`1.InsertItem(System.Int32,`0)">
            <summary>
            Gives the new object a parent reference to this
            list.
            </summary>
            <param name="index">Index at which to insert the item.</param>
            <param name="item">Item to insert.</param>
        </member>
        <member name="M:Csla.EditableRootListBase`1.RemoveItem(System.Int32)">
            <summary>
            Removes an item from the list.
            </summary>
            <param name="index">Index of the item
            to be removed.</param>
        </member>
        <member name="M:Csla.EditableRootListBase`1.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
            <summary>
            This method is called on a newly deserialized object
            after deserialization is complete.
            </summary>
            <param name="context">Serialization context object.</param>
        </member>
        <member name="M:Csla.EditableRootListBase`1.DataPortal_Fetch(System.Object)">
            <summary>
            Override this method to allow retrieval of an existing business
            object based on data in the database.
            </summary>
            <param name="criteria">An object containing criteria values to identify the object.</param>
        </member>
        <member name="M:Csla.EditableRootListBase`1.DataPortal_OnDataPortalInvoke(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal prior to calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.EditableRootListBase`1.DataPortal_OnDataPortalInvokeComplete(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal after calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.EditableRootListBase`1.DataPortal_OnDataPortalException(Csla.DataPortalEventArgs,System.Exception)">
            <summary>
            Called by the server-side DataPortal if an exception
            occurs during data access.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
            <param name="ex">The Exception thrown during data access.</param>
        </member>
        <member name="T:Csla.FilteredBindingList`1">
            <summary>
            Provides a filtered view into an existing IList(Of T).
            </summary>
            <typeparam name="T">The type of the objects contained
            in the original list.</typeparam>
        </member>
        <member name="M:Csla.FilteredBindingList`1.GetEnumerator">
            <summary>
            Gets an enumerator object.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Csla.FilteredBindingList`1.AddIndex(System.ComponentModel.PropertyDescriptor)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="property">Property on which
            to build the index.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.AddNew">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="M:Csla.FilteredBindingList`1.ApplySort(System.ComponentModel.PropertyDescriptor,System.ComponentModel.ListSortDirection)">
            <summary>
            Sorts the list if the original list
            supports sorting.
            </summary>
            <param name="property">Property on which to sort.</param>
            <param name="direction">Direction of the sort.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.Find(System.String,System.Object)">
            <summary>
            Finds an item in the view
            </summary>
            <param name="propertyName">Name of the property to search</param>
            <param name="key">Value to find</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.Find(System.ComponentModel.PropertyDescriptor,System.Object)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="key">Key value for which to search.</param>
            <param name="property">Property to search for the key
            value.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.OnListChanged(System.ComponentModel.ListChangedEventArgs)">
            <summary>
            Raises the ListChanged event.
            </summary>
            <param name="e">Parameter for the event.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.RemoveIndex(System.ComponentModel.PropertyDescriptor)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="property">Property for which the
            index should be removed.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.RemoveSort">
            <summary>
            Removes any sort currently applied to the view.
            </summary>
        </member>
        <member name="M:Csla.FilteredBindingList`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the contents of the list to
            an array.
            </summary>
            <param name="array">Array to receive the data.</param>
            <param name="arrayIndex">Starting array index.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.Add(`0)">
            <summary>
            Adds an item to the list.
            </summary>
            <param name="item">Item to be added.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.Clear">
            <summary>
            Clears the list.
            </summary>
        </member>
        <member name="M:Csla.FilteredBindingList`1.Contains(`0)">
            <summary>
            Determines whether the specified
            item is contained in the list.
            </summary>
            <param name="item">Item to find.</param>
            <returns><see langword="true"/> if the item is
            contained in the list.</returns>
        </member>
        <member name="M:Csla.FilteredBindingList`1.IndexOf(`0)">
            <summary>
            Gets the 0-based index of an
            item in the list.
            </summary>
            <param name="item">The item to find.</param>
            <returns>0-based index of the item
            in the list.</returns>
        </member>
        <member name="M:Csla.FilteredBindingList`1.Insert(System.Int32,`0)">
            <summary>
            Inserts an item into the list.
            </summary>
            <param name="index">Index at
            which to insert the item.</param>
            <param name="item">Item to insert.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.Remove(`0)">
            <summary>
            Removes an item from the list.
            </summary>
            <param name="item">Item to remove.</param>
            <returns><see langword="true"/> if the 
            remove succeeds.</returns>
        </member>
        <member name="M:Csla.FilteredBindingList`1.RemoveAt(System.Int32)">
            <summary>
            Removes an item from the list.
            </summary>
            <param name="index">Index of item
            to be removed.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.#ctor(System.Collections.Generic.IList{`0})">
            <summary>
            Creates a new view based on the provided IList object.
            </summary>
            <param name="list">The IList (collection) containing the data.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.#ctor(System.Collections.Generic.IList{`0},Csla.FilterProvider)">
            <summary>
            Creates a new view based on the provided IList object.
            </summary>
            <param name="list">The IList (collection) containing the data.</param>
            <param name="filterProvider">
            Delegate pointer to a method that implements the filter behavior.
            </param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.ApplyFilter(System.String,System.Object)">
            <summary>
            Applies a filter to the view.
            </summary>
            <param name="propertyName">The text name of the property on which to filter.</param>
            <param name="filter">The filter criteria.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.ApplyFilter(System.ComponentModel.PropertyDescriptor,System.Object)">
            <summary>
            Applies a filter to the view.
            </summary>
            <param name="property">A PropertyDescriptor for the property on which to filter.</param>
            <param name="filter">The filter criteria.</param>
        </member>
        <member name="M:Csla.FilteredBindingList`1.RemoveFilter">
            <summary>
            Removes the filter from the list,
            so the view reflects the state of
            the original list.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.AllowEdit">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.AllowNew">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.AllowRemove">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.IsSorted">
            <summary>
            Returns True if the view is currently sorted.
            </summary>
        </member>
        <member name="E:Csla.FilteredBindingList`1.ListChanged">
            <summary>
            Raised to indicate that the list's data has changed.
            </summary>
            <remarks>
            This event is raised if the underling IList object's data changes
            (assuming the underling IList also implements the IBindingList
            interface). It is also raised if the filter
            is changed to indicate that the view's data has changed.
            </remarks>
        </member>
        <member name="P:Csla.FilteredBindingList`1.SortDirection">
            <summary>
            Returns the direction of the current sort.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.SortProperty">
            <summary>
            Returns the PropertyDescriptor of the current sort.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.SupportsChangeNotification">
            <summary>
            Returns True since this object does raise the
            ListChanged event.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.SupportsSearching">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.SupportsSorting">
            <summary>
            Returns True. Sorting is supported.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.Count">
            <summary>
            Gets the number of items in the list.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.IsReadOnly">
            <summary>
            Gets a value indicating whether the list
            is read-only.
            </summary>
        </member>
        <member name="P:Csla.FilteredBindingList`1.Item(System.Int32)">
            <summary>
            Gets or sets the item at 
            the specified index.
            </summary>
            <param name="index">Index of the item.</param>
            <returns>Item at the specified index.</returns>
        </member>
        <member name="P:Csla.FilteredBindingList`1.FilterProvider">
            <summary>
            Gets or sets the filter provider method.
            </summary>
            <value>
            Delegate pointer to a method that implements the filter behavior.
            </value>
            <returns>
            Delegate pointer to a method that implements the filter behavior.
            </returns>
            <remarks>
            If this value is set to Nothing (null in C#) then the default
            filter provider, <see cref="T:Csla.DefaultFilter"/> will be used.
            </remarks>
        </member>
        <member name="P:Csla.FilteredBindingList`1.FilterProperty">
            <summary>
            The property on which the items will be filtered.
            </summary>
            <value>A descriptor for the property on which
            the items in the collection will be filtered.</value>
            <returns></returns>
            <remarks></remarks>
        </member>
        <member name="P:Csla.FilteredBindingList`1.IsFiltered">
            <summary>
            Returns True if the view is currently filtered.
            </summary>
        </member>
        <member name="T:Csla.FilterProvider">
            <summary>
            Defines the method signature for a filter
            provider method used by FilteredBindingList.
            </summary>
            <param name="item">The object to be filtered.</param>
            <param name="filter">The filter criteria.</param>
            <returns><see langword="true"/> if the item matches the filter.</returns>
        </member>
        <member name="T:Csla.NameValueListBase`2">
            <summary>
            This is the base class from which readonly name/value
            collections should be derived.
            </summary>
            <typeparam name="K">Type of the key values.</typeparam>
            <typeparam name="V">Type of the values.</typeparam>
        </member>
        <member name="M:Csla.NameValueListBase`2.Value(`0)">
            <summary>
            Returns the value corresponding to the
            specified key.
            </summary>
            <param name="key">Key value for which to retrieve a value.</param>
        </member>
        <member name="M:Csla.NameValueListBase`2.Key(`1)">
            <summary>
            Returns the key corresponding to the
            first occurance of the specified value
            in the list.
            </summary>
            <param name="value">Value for which to retrieve the key.</param>
        </member>
        <member name="M:Csla.NameValueListBase`2.ContainsKey(`0)">
            <summary>
            Gets a value indicating whether the list contains the
            specified key.
            </summary>
            <param name="key">Key value for which to search.</param>
        </member>
        <member name="M:Csla.NameValueListBase`2.ContainsValue(`1)">
            <summary>
            Gets a value indicating whether the list contains the
            specified value.
            </summary>
            <param name="value">Value for which to search.</param>
        </member>
        <member name="M:Csla.NameValueListBase`2.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.NameValueListBase`2.Initialize">
            <summary>
            Override this method to set up event handlers so user
            code in a partial class can respond to events raised by
            generated code.
            </summary>
        </member>
        <member name="M:Csla.NameValueListBase`2.GetClone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>A new object containing the exact data of the original object.</returns>
        </member>
        <member name="M:Csla.NameValueListBase`2.Clone">
            <summary>
            Creates a clone of the object.
            </summary>
        </member>
        <member name="M:Csla.NameValueListBase`2.DataPortal_Fetch(System.Object)">
            <summary>
            Override this method to allow retrieval of an existing business
            object based on data in the database.
            </summary>
            <param name="criteria">An object containing criteria values to identify the object.</param>
        </member>
        <member name="M:Csla.NameValueListBase`2.DataPortal_OnDataPortalInvoke(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal prior to calling the 
            requested DataPortal_XYZ method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.NameValueListBase`2.DataPortal_OnDataPortalInvokeComplete(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal after calling the 
            requested DataPortal_XYZ method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.NameValueListBase`2.DataPortal_OnDataPortalException(Csla.DataPortalEventArgs,System.Exception)">
            <summary>
            Called by the server-side DataPortal if an exception
            occurs during data access.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
            <param name="ex">The Exception thrown during data access.</param>
        </member>
        <member name="T:Csla.NameValueListBase`2.NameValuePair">
            <summary>
            Contains a key and value pair.
            </summary>
        </member>
        <member name="M:Csla.NameValueListBase`2.NameValuePair.#ctor(`0,`1)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
        </member>
        <member name="P:Csla.NameValueListBase`2.NameValuePair.Key">
            <summary>
            The Key or Name value.
            </summary>
        </member>
        <member name="P:Csla.NameValueListBase`2.NameValuePair.Value">
            <summary>
            The Value corresponding to the key/name.
            </summary>
        </member>
        <member name="T:Csla.NameValueListBase`2.Criteria">
            <summary>
            Default Criteria for retrieving simple
            name/value lists.
            </summary>
            <remarks>
            This criteria merely specifies the type of
            collection to be retrieved. That type information
            is used by the DataPortal to create the correct
            type of collection object during data retrieval.
            </remarks>
        </member>
        <member name="M:Csla.NameValueListBase`2.Criteria.#ctor(System.Type)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="collectionType">
            The <see cref="T:System.Type"/> of the business
            collection class.
            </param>
        </member>
        <member name="T:Csla.NotUndoableAttribute">
            <summary>
            Marks a field to indicate that the value should not 
            be copied as part of the undo process.
            </summary>
            <remarks>
            Marking a variable with this attribute will cause the n-level
            undo process to ignore that variable's value. The value will
            not be included in a snapshot when BeginEdit is called, nor
            will it be restored when CancelEdit is called.
            </remarks>
        </member>
        <member name="T:Csla.Properties.Resources">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.BusinessPrincipalException">
            <summary>
              Looks up a localized string similar to Principal must be of type BusinessPrincipal, not.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.ChangeInvalidException">
            <summary>
              Looks up a localized string similar to Changing an element is an invalid operation.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.ChildDeleteException">
            <summary>
              Looks up a localized string similar to Can not directly mark a child object for deletion - use its parent collection.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.ClearInvalidException">
            <summary>
              Looks up a localized string similar to Clear is an invalid operation.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.CreateNotSupportedException">
            <summary>
              Looks up a localized string similar to Invalid operation - create not allowed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.DeleteNotSupportedException">
            <summary>
              Looks up a localized string similar to Invalid operation - delete not allowed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.ErrorReadingValueException">
            <summary>
              Looks up a localized string similar to Error reading value:.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.ExecuteNotSupportedException">
            <summary>
              Looks up a localized string similar to Invalid operation - execute not allowed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.Failed">
            <summary>
              Looks up a localized string similar to failed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.FailedOnServer">
            <summary>
              Looks up a localized string similar to failed on the server.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.FetchNotSupportedException">
            <summary>
              Looks up a localized string similar to Invalid operation - fetch not allowed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.GetIdValueCantBeNull">
            <summary>
              Looks up a localized string similar to GetIdValue must not return Nothing.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.InsertInvalidException">
            <summary>
              Looks up a localized string similar to Insert is an invalid operation.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.InsertNotSupportedException">
            <summary>
              Looks up a localized string similar to Invalid operation - insert not allowed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.InvalidRuleMethodException">
            <summary>
              Looks up a localized string similar to Invalid rule method (instance methods of the target object not allowed).
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.MaxValueRule">
            <summary>
              Looks up a localized string similar to {0} can not exceed {1}.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.MethodCallFailed">
            <summary>
              Looks up a localized string similar to method call failed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.MethodNotImplemented">
            <summary>
              Looks up a localized string similar to not implemented.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.MinValueRule">
            <summary>
              Looks up a localized string similar to {0} can not be less than {1}.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoApplyEditChildException">
            <summary>
              Looks up a localized string similar to ApplyEdit is not valid on a child object.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoBeginEditChildException">
            <summary>
              Looks up a localized string similar to BeginEdit is not valid on a child object.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoCancelEditChildException">
            <summary>
              Looks up a localized string similar to CancelEdit is not valid on a child object.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoDeleteRootException">
            <summary>
              Looks up a localized string similar to Invalid for root objects - use Delete instead.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoPrincipalAllowedException">
            <summary>
              Looks up a localized string similar to No principal object should be passed to DataPortal when using Windows integrated security.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoSaveChildException">
            <summary>
              Looks up a localized string similar to Can not directly save a child object.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoSaveEditingException">
            <summary>
              Looks up a localized string similar to Object is still being edited and can not be saved.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoSaveInvalidException">
            <summary>
              Looks up a localized string similar to Object is not valid and can not be saved.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NoSuchValueExistsException">
            <summary>
              Looks up a localized string similar to No such value exists:.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.NothingNotValid">
            <summary>
              Looks up a localized string similar to Argument must not be Nothing.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.ParentSetException">
            <summary>
              Looks up a localized string similar to Parent value can only be set for child objects.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.PrimitiveTypeRequired">
            <summary>
              Looks up a localized string similar to Type parameter must be a primitive type.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.PropertyCopyFailed">
            <summary>
              Looks up a localized string similar to Property copy failed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.PropertyGetNotAllowed">
            <summary>
              Looks up a localized string similar to Property get not allowed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.PropertySetNotAllowed">
            <summary>
              Looks up a localized string similar to Property set not allowed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.RegExMatchRule">
            <summary>
              Looks up a localized string similar to {0} does not match regular expression.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.RemoveInvalidException">
            <summary>
              Looks up a localized string similar to Remove is an invalid operation.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.SmartDateT">
            <summary>
              Looks up a localized string similar to t.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.SmartDateToday">
            <summary>
              Looks up a localized string similar to today.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.SmartDateTom">
            <summary>
              Looks up a localized string similar to tom.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.SmartDateTomorrow">
            <summary>
              Looks up a localized string similar to tomorrow.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.SmartDateY">
            <summary>
              Looks up a localized string similar to y.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.SmartDateYesterday">
            <summary>
              Looks up a localized string similar to yesterday.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.StringMaxLengthRule">
            <summary>
              Looks up a localized string similar to {0} can not exceed {1} characters.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.StringRequiredRule">
            <summary>
              Looks up a localized string similar to {0} required.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.StringToDateException">
            <summary>
              Looks up a localized string similar to String value can not be converted to a date.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.TypeLoadException">
            <summary>
              Looks up a localized string similar to Failed to load type &apos;{0}&apos;.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.UpdateNotSupportedException">
            <summary>
              Looks up a localized string similar to Invalid operation - update not allowed.
            </summary>
        </member>
        <member name="P:Csla.Properties.Resources.ValueNotSmartDateException">
            <summary>
              Looks up a localized string similar to Value is not a SmartDate.
            </summary>
        </member>
        <member name="T:Csla.ReadOnlyBase`1">
            <summary>
            This is a base class from which readonly business classes
            can be derived.
            </summary>
            <remarks>
            This base class only supports data retrieve, not updating or
            deleting. Any business classes derived from this base class
            should only implement readonly properties.
            </remarks>
            <typeparam name="T">Type of the business object.</typeparam>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.GetIdValue">
            <summary>
            Override this method to return a unique identifying
            vlaue for this object.
            </summary>
            <remarks>
            If you can not provide a unique identifying value, it
            is best if you can generate such a unique value (even
            temporarily). If you can not do that, then return 
            <see langword="Nothing"/> and then manually override the
            <see cref="M:Csla.ReadOnlyBase`1.Equals(System.Object)"/>, <see cref="M:Csla.ReadOnlyBase`1.GetHashCode"/> and
            <see cref="M:Csla.ReadOnlyBase`1.ToString"/> methods in your business object.
            </remarks>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.Equals(System.Object)">
            <summary>
            Compares this object for equality with another object, using
            the results of <see cref="M:Csla.ReadOnlyBase`1.GetIdValue"/> to determine
            equality.
            </summary>
            <param name="obj">The object to be compared.</param>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.GetHashCode">
            <summary>
            Returns a hash code value for this object, based on
            the results of <see cref="M:Csla.ReadOnlyBase`1.GetIdValue"/>.
            </summary>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.ToString">
            <summary>
            Returns a text representation of this object by
            returning the <see cref="M:Csla.ReadOnlyBase`1.GetIdValue"/> value
            in text form.
            </summary>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.Initialize">
            <summary>
            Override this method to set up event handlers so user
            code in a partial class can respond to events raised by
            generated code.
            </summary>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.AddInstanceAuthorizationRules">
            <summary>
            Override this method to add authorization
            rules for your object's properties.
            </summary>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.AddAuthorizationRules">
            <summary>
            Override this method to add per-type
            authorization rules for your type's properties.
            </summary>
            <remarks>
            AddSharedAuthorizationRules is automatically called by CSLA .NET
            when your object should associate per-type authorization roles
            with its properties.
            </remarks>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.CanReadProperty(System.Boolean)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            calling property.
            </summary>
            <returns><see langword="true" /> if read is allowed.</returns>
            <param name="throwOnFalse">Indicates whether a negative
            result should cause an exception.</param>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.CanReadProperty(System.String,System.Boolean)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            calling property.
            </summary>
            <returns><see langword="true" /> if read is allowed.</returns>
            <param name="propertyName">Name of the property to read.</param>
            <param name="throwOnFalse">Indicates whether a negative
            result should cause an exception.</param>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.CanReadProperty">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            calling property.
            </summary>
            <returns><see langword="true" /> if read is allowed.</returns>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.CanReadProperty(System.String)">
            <summary>
            Returns <see langword="true" /> if the user is allowed to read the
            specified property.
            </summary>
            <param name="propertyName">Name of the property to read.</param>
            <returns><see langword="true" /> if read is allowed.</returns>
            <remarks>
            <para>
            If a list of allowed roles is provided then only users in those
            roles can read. If no list of allowed roles is provided then
            the list of denied roles is checked.
            </para><para>
            If a list of denied roles is provided then users in the denied
            roles are denied read access. All other users are allowed.
            </para><para>
            If neither a list of allowed nor denied roles is provided then
            all users will have read access.
            </para>
            </remarks>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.GetClone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>A new object containing the exact data of the original object.</returns>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.Clone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>
            A new object containing the exact data of the original object.
            </returns>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.DataPortal_Fetch(System.Object)">
            <summary>
            Override this method to allow retrieval of an existing business
            object based on data in the database.
            </summary>
            <param name="criteria">An object containing criteria values to identify the object.</param>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.DataPortal_OnDataPortalInvoke(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal prior to calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.DataPortal_OnDataPortalInvokeComplete(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal after calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.DataPortal_OnDataPortalException(Csla.DataPortalEventArgs,System.Exception)">
            <summary>
            Called by the server-side DataPortal if an exception
            occurs during data access.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
            <param name="ex">The Exception thrown during data access.</param>
        </member>
        <member name="M:Csla.ReadOnlyBase`1.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
            <summary>
            This method is called on a newly deserialized object
            after deserialization is complete.
            </summary>
            <param name="context">Serialization context object.</param>
        </member>
        <member name="P:Csla.ReadOnlyBase`1.AuthorizationRules">
            <summary>
            Provides access to the AuthorizationRules object for this
            object.
            </summary>
            <remarks>
            Use this object to add a list of allowed and denied roles for
            reading and writing properties of the object. Typically these
            values are added once when the business object is instantiated.
            </remarks>
        </member>
        <member name="T:Csla.ReadOnlyListBase`2">
            <summary>
            This is the base class from which readonly collections
            of readonly objects should be derived.
            </summary>
            <typeparam name="T">Type of the list class.</typeparam>
            <typeparam name="C">Type of child objects contained in the list.</typeparam>
        </member>
        <member name="M:Csla.ReadOnlyListBase`2.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.ReadOnlyListBase`2.Initialize">
            <summary>
            Override this method to set up event handlers so user
            code in a partial class can respond to events raised by
            generated code.
            </summary>
        </member>
        <member name="M:Csla.ReadOnlyListBase`2.GetClone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>A new object containing the exact data of the original object.</returns>
        </member>
        <member name="M:Csla.ReadOnlyListBase`2.Clone">
            <summary>
            Creates a clone of the object.
            </summary>
            <returns>
            A new object containing the exact data of the original object.
            </returns>
        </member>
        <member name="M:Csla.ReadOnlyListBase`2.DataPortal_Fetch(System.Object)">
            <summary>
            Override this method to allow retrieval of an existing business
            object based on data in the database.
            </summary>
            <param name="criteria">An object containing criteria values to identify the object.</param>
        </member>
        <member name="M:Csla.ReadOnlyListBase`2.DataPortal_OnDataPortalInvoke(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal prior to calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.ReadOnlyListBase`2.DataPortal_OnDataPortalInvokeComplete(Csla.DataPortalEventArgs)">
            <summary>
            Called by the server-side DataPortal after calling the 
            requested DataPortal_xyz method.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
        </member>
        <member name="M:Csla.ReadOnlyListBase`2.DataPortal_OnDataPortalException(Csla.DataPortalEventArgs,System.Exception)">
            <summary>
            Called by the server-side DataPortal if an exception
            occurs during data access.
            </summary>
            <param name="e">The DataPortalContext object passed to the DataPortal.</param>
            <param name="ex">The Exception thrown during data access.</param>
        </member>
        <member name="T:Csla.Security.AccessType">
            <summary>
            The access types supported by authorization
            as discussed in Chapter 3.
            </summary>
        </member>
        <member name="F:Csla.Security.AccessType.ReadAllowed">
            <summary>
            Roles allowed to read property.
            </summary>
        </member>
        <member name="F:Csla.Security.AccessType.ReadDenied">
            <summary>
            Roles denied read access to property.
            </summary>
        </member>
        <member name="F:Csla.Security.AccessType.WriteAllowed">
            <summary>
            Roles allowed to set property.
            </summary>
        </member>
        <member name="F:Csla.Security.AccessType.WriteDenied">
            <summary>
            Roles denied write access to property.
            </summary>
        </member>
        <member name="T:Csla.Security.AuthorizationRules">
            <summary>
            Maintains a list of allowed and denied user roles
            for each property.
            </summary>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.#ctor(System.Type)">
            <summary>
            Creates an instance of the object, initializing
            it with the business object type.
            </summary>
            <param name="businessObjectType">
            Type of the business object to which the rules
            apply.
            </param>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.InstanceAllowRead(System.String,System.String[])">
            <summary>
            Specify the roles allowed to read a given
            property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="roles">List of roles granted read access.</param>
            <remarks>
            This method may be called multiple times, with the roles in
            each call being added to the end of the list of allowed roles.
            In other words, each call is cumulative, adding more roles
            to the list.
            </remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.InstanceDenyRead(System.String,System.String[])">
            <summary>
            Specify the roles denied read access to 
            a given property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="roles">List of roles denied read access.</param>
            <remarks>
            This method may be called multiple times, with the roles in
            each call being added to the end of the list of denied roles.
            In other words, each call is cumulative, adding more roles
            to the list.
            </remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.InstanceAllowWrite(System.String,System.String[])">
            <summary>
            Specify the roles allowed to write a given
            property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="roles">List of roles granted write access.</param>
            <remarks>
            This method may be called multiple times, with the roles in
            each call being added to the end of the list of allowed roles.
            In other words, each call is cumulative, adding more roles
            to the list.
            </remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.InstanceDenyWrite(System.String,System.String[])">
            <summary>
            Specify the roles denied write access to 
            a given property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="roles">List of roles denied write access.</param>
            <remarks>
            This method may be called multiple times, with the roles in
            each call being added to the end of the list of denied roles.
            In other words, each call is cumulative, adding more roles
            to the list.
            </remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.AllowRead(System.String,System.String[])">
            <summary>
            Specify the roles allowed to read a given
            property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="roles">List of roles granted read access.</param>
            <remarks>
            This method may be called multiple times, with the roles in
            each call being added to the end of the list of allowed roles.
            In other words, each call is cumulative, adding more roles
            to the list.
            </remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.DenyRead(System.String,System.String[])">
            <summary>
            Specify the roles denied read access to 
            a given property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="roles">List of roles denied read access.</param>
            <remarks>
            This method may be called multiple times, with the roles in
            each call being added to the end of the list of denied roles.
            In other words, each call is cumulative, adding more roles
            to the list.
            </remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.AllowWrite(System.String,System.String[])">
            <summary>
            Specify the roles allowed to write a given
            property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="roles">List of roles granted write access.</param>
            <remarks>
            This method may be called multiple times, with the roles in
            each call being added to the end of the list of allowed roles.
            In other words, each call is cumulative, adding more roles
            to the list.
            </remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.DenyWrite(System.String,System.String[])">
            <summary>
            Specify the roles denied write access to 
            a given property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="roles">List of roles denied write access.</param>
            <remarks>
            This method may be called multiple times, with the roles in
            each call being added to the end of the list of denied roles.
            In other words, each call is cumulative, adding more roles
            to the list.
            </remarks>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.HasReadAllowedRoles(System.String)">
            <summary>
            Indicates whether the property has a list
            of roles granted read access.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.IsReadAllowed(System.String)">
            <summary>
            Indicates whether the current user as defined by
            <see cref="P:Csla.ApplicationContext.User"/>
            is explicitly allowed to read the property.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.HasReadDeniedRoles(System.String)">
            <summary>
            Indicates whether the property has a list
            of roles denied read access.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.IsReadDenied(System.String)">
            <summary>
            Indicates whether the current user as defined by
            <see cref="P:Csla.ApplicationContext.User"/>
            is explicitly denied read access to the property.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.HasWriteAllowedRoles(System.String)">
            <summary>
            Indicates whether the property has a list
            of roles granted write access.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.IsWriteAllowed(System.String)">
            <summary>
            Indicates whether the current user as defined by
            <see cref="P:Csla.ApplicationContext.User"/>
            is explicitly allowed to set the property.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.HasWriteDeniedRoles(System.String)">
            <summary>
            Indicates whether the property has a list
            of roles denied write access.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Csla.Security.AuthorizationRules.IsWriteDenied(System.String)">
            <summary>
            Indicates whether the current user as defined by
            <see cref="P:Csla.ApplicationContext.User"/>
            is explicitly denied write access to the property.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="T:Csla.Security.AuthorizationRulesManager">
            <summary>
            Maintains authorization roles for a business object
            or business object type.
            </summary>
        </member>
        <member name="T:Csla.Security.BusinessPrincipalBase">
            <summary>
            Base class from which custom principal
            objects should inherit to operate
            properly with the data portal.
            </summary>
        </member>
        <member name="M:Csla.Security.BusinessPrincipalBase.IsInRole(System.String)">
            <summary>
            Returns a value indicating whether the
            user is in a given role.
            </summary>
            <param name="role">Name of the role.</param>
        </member>
        <member name="M:Csla.Security.BusinessPrincipalBase.#ctor(System.Security.Principal.IIdentity)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="identity">Identity object for the user.</param>
        </member>
        <member name="P:Csla.Security.BusinessPrincipalBase.Identity">
            <summary>
            Returns the user's identity object.
            </summary>
        </member>
        <member name="T:Csla.Security.RolesForProperty">
            <summary>
            Maintains a list of allowed and denied
            user roles for a specific property.
            </summary>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Security.RolesForProperty.IsReadAllowed(System.Security.Principal.IPrincipal)">
            <summary>
            Returns <see langword="true"/> if the user is in a role
            explicitly allowed read access.
            </summary>
            <param name="principal">A <see cref="T:System.Security.Principal.IPrincipal"/>
            representing the user.</param>
            <returns><see langword="true"/> if the user is allowed read access.</returns>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Security.RolesForProperty.IsReadDenied(System.Security.Principal.IPrincipal)">
            <summary>
            Returns <see langword="true"/> if the user is in a role
            explicitly denied read access.
            </summary>
            <param name="principal">A <see cref="T:System.Security.Principal.IPrincipal"/>
            representing the user.</param>
            <returns><see langword="true"/> if the user is denied read access.</returns>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Security.RolesForProperty.IsWriteAllowed(System.Security.Principal.IPrincipal)">
            <summary>
            Returns <see langword="true"/> if the user is in a role
            explicitly allowed write access.
            </summary>
            <param name="principal">A <see cref="T:System.Security.Principal.IPrincipal"/>
            representing the user.</param>
            <returns><see langword="true"/> if the user is allowed write access.</returns>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Security.RolesForProperty.IsWriteDenied(System.Security.Principal.IPrincipal)">
            <summary>
            Returns <see langword="true"/> if the user is in a role
            explicitly denied write access.
            </summary>
            <param name="principal">A <see cref="T:System.Security.Principal.IPrincipal"/>
            representing the user.</param>
            <returns><see langword="true"/> if the user is denied write access.</returns>
            <remarks></remarks>
        </member>
        <member name="P:Csla.Security.RolesForProperty.ReadAllowed">
            <summary>
            Returns a List(Of string) containing the list
            of roles allowed read access.
            </summary>
        </member>
        <member name="P:Csla.Security.RolesForProperty.ReadDenied">
            <summary>
            Returns a List(Of string) containing the list
            of roles denied read access.
            </summary>
        </member>
        <member name="P:Csla.Security.RolesForProperty.WriteAllowed">
            <summary>
            Returns a List(Of string) containing the list
            of roles allowed write access.
            </summary>
        </member>
        <member name="P:Csla.Security.RolesForProperty.WriteDenied">
            <summary>
            Returns a List(Of string) containing the list
            of roles denied write access.
            </summary>
        </member>
        <member name="T:Csla.Security.SharedAuthorizationRules">
            <summary>
            Maintains a list of all the per-type
            <see cref="T:Csla.Security.AuthorizationRulesManager"/> objects
            loaded in memory.
            </summary>
        </member>
        <member name="M:Csla.Security.SharedAuthorizationRules.GetManager(System.Type,System.Boolean)">
            <summary>
            Gets the <see cref="T:Csla.Security.AuthorizationRulesManager"/> for the 
            specified object type, optionally creating a new instance 
            of the object if necessary.
            </summary>
            <param name="objectType">
            Type of business object for which the rules apply.
            </param>
            <param name="create">Indicates whether to create
            a new instance of the object if one doesn't exist.</param>
        </member>
        <member name="M:Csla.Security.SharedAuthorizationRules.RulesExistFor(System.Type)">
            <summary>
            Gets a value indicating whether a set of rules
            have been created for a given <see cref="T:System.Type"/>.
            </summary>
            <param name="objectType">
            Type of business object for which the rules apply.
            </param>
            <returns><see langword="true"/> if rules exist for the type.</returns>
        </member>
        <member name="T:Csla.SmartDate">
            <summary>
            Provides a date data type that understands the concept
            of an empty date value.
            </summary>
            <remarks>
            See Chapter 5 for a full discussion of the need for this
            data type and the design choices behind it.
            </remarks>
        </member>
        <member name="M:Csla.SmartDate.#ctor(System.Boolean)">
            <summary>
            Creates a new SmartDate object.
            </summary>
            <param name="emptyIsMin">Indicates whether an empty date is the min or max date value.</param>
        </member>
        <member name="M:Csla.SmartDate.#ctor(Csla.SmartDate.EmptyValue)">
            <summary>
            Creates a new SmartDate object.
            </summary>
            <param name="emptyValue">Indicates whether an empty date is the min or max date value.</param>
        </member>
        <member name="M:Csla.SmartDate.#ctor(System.DateTime)">
            <summary>
            Creates a new SmartDate object.
            </summary>
            <remarks>
            The SmartDate created will use the min possible
            date to represent an empty date.
            </remarks>
            <param name="value">The initial value of the object.</param>
        </member>
        <member name="M:Csla.SmartDate.#ctor(System.DateTime,System.Boolean)">
            <summary>
            Creates a new SmartDate object.
            </summary>
            <param name="value">The initial value of the object.</param>
            <param name="emptyIsMin">Indicates whether an empty date is the min or max date value.</param>
        </member>
        <member name="M:Csla.SmartDate.#ctor(System.DateTime,Csla.SmartDate.EmptyValue)">
            <summary>
            Creates a new SmartDate object.
            </summary>
            <param name="value">The initial value of the object.</param>
            <param name="emptyValue">Indicates whether an empty date is the min or max date value.</param>
        </member>
        <member name="M:Csla.SmartDate.#ctor(System.String)">
            <summary>
            Creates a new SmartDate object.
            </summary>
            <remarks>
            The SmartDate created will use the min possible
            date to represent an empty date.
            </remarks>
            <param name="value">The initial value of the object (as text).</param>
        </member>
        <member name="M:Csla.SmartDate.#ctor(System.String,System.Boolean)">
            <summary>
            Creates a new SmartDate object.
            </summary>
            <param name="value">The initial value of the object (as text).</param>
            <param name="emptyIsMin">Indicates whether an empty date is the min or max date value.</param>
        </member>
        <member name="M:Csla.SmartDate.#ctor(System.String,Csla.SmartDate.EmptyValue)">
            <summary>
            Creates a new SmartDate object.
            </summary>
            <param name="value">The initial value of the object (as text).</param>
            <param name="emptyValue">Indicates whether an empty date is the min or max date value.</param>
        </member>
        <member name="M:Csla.SmartDate.SetDefaultFormatString(System.String)">
            <summary>
            Sets the global default format string used by all new
            SmartDate values going forward.
            </summary>
            <remarks>
            The default global format string is "d" unless this
            method is called to change that value. Existing SmartDate
            values are unaffected by this method, only SmartDate
            values created after calling this method are affected.
            </remarks>
            <param name="formatString">
            The format string should follow the requirements for the
            .NET System.String.Format statement.
            </param>
        </member>
        <member name="M:Csla.SmartDate.ToString">
            <summary>
            Returns a text representation of the date value.
            </summary>
        </member>
        <member name="M:Csla.SmartDate.ToString(System.String)">
            <summary>
            Returns a text representation of the date value.
            </summary>
            <param name="format">
            A standard .NET format string.
            </param>
        </member>
        <member name="M:Csla.SmartDate.Equals(System.Object)">
            <summary>
            Compares this object to another <see cref="T:Csla.SmartDate"/>
            for equality.
            </summary>
            <param name="obj">Object to compare for equality.</param>
        </member>
        <member name="M:Csla.SmartDate.GetHashCode">
            <summary>
            Returns a hash code for this object.
            </summary>
        </member>
        <member name="M:Csla.SmartDate.Parse(System.String)">
            <summary>
            Converts a string value into a SmartDate.
            </summary>
            <param name="value">String containing the date value.</param>
            <returns>A new SmartDate containing the date value.</returns>
            <remarks>
            EmptyIsMin will default to <see langword="true"/>.
            </remarks>
        </member>
        <member name="M:Csla.SmartDate.Parse(System.String,System.Boolean)">
            <summary>
            Converts a string value into a SmartDate.
            </summary>
            <param name="value">String containing the date value.</param>
            <param name="emptyIsMin">Indicates whether an empty date is the min or max date value.</param>
            <returns>A new SmartDate containing the date value.</returns>
        </member>
        <member name="M:Csla.SmartDate.StringToDate(System.String)">
            <summary>
            Converts a text date representation into a Date value.
            </summary>
            <remarks>
            An empty string is assumed to represent an empty date. An empty date
            is returned as the MinValue of the Date datatype.
            </remarks>
            <param name="value">The text representation of the date.</param>
            <returns>A Date value.</returns>
        </member>
        <member name="M:Csla.SmartDate.StringToDate(System.String,System.Boolean)">
            <summary>
            Converts a text date representation into a Date value.
            </summary>
            <remarks>
            An empty string is assumed to represent an empty date. An empty date
            is returned as the MinValue or MaxValue of the Date datatype depending
            on the EmptyIsMin parameter.
            </remarks>
            <param name="value">The text representation of the date.</param>
            <param name="emptyIsMin">Indicates whether an empty date is the min or max date value.</param>
            <returns>A Date value.</returns>
        </member>
        <member name="M:Csla.SmartDate.StringToDate(System.String,Csla.SmartDate.EmptyValue)">
            <summary>
            Converts a text date representation into a Date value.
            </summary>
            <remarks>
            An empty string is assumed to represent an empty date. An empty date
            is returned as the MinValue or MaxValue of the Date datatype depending
            on the EmptyIsMin parameter.
            </remarks>
            <param name="value">The text representation of the date.</param>
            <param name="emptyValue">Indicates whether an empty date is the min or max date value.</param>
            <returns>A Date value.</returns>
        </member>
        <member name="M:Csla.SmartDate.DateToString(System.DateTime,System.String)">
            <summary>
            Converts a date value into a text representation.
            </summary>
            <remarks>
            The date is considered empty if it matches the min value for
            the Date datatype. If the date is empty, this
            method returns an empty string. Otherwise it returns the date
            value formatted based on the FormatString parameter.
            </remarks>
            <param name="value">The date value to convert.</param>
            <param name="formatString">The format string used to format the date into text.</param>
            <returns>Text representation of the date value.</returns>
        </member>
        <member name="M:Csla.SmartDate.DateToString(System.DateTime,System.String,System.Boolean)">
            <summary>
            Converts a date value into a text representation.
            </summary>
            <remarks>
            Whether the date value is considered empty is determined by
            the EmptyIsMin parameter value. If the date is empty, this
            method returns an empty string. Otherwise it returns the date
            value formatted based on the FormatString parameter.
            </remarks>
            <param name="value">The date value to convert.</param>
            <param name="formatString">The format string used to format the date into text.</param>
            <param name="emptyIsMin">Indicates whether an empty date is the min or max date value.</param>
            <returns>Text representation of the date value.</returns>
        </member>
        <member name="M:Csla.SmartDate.DateToString(System.DateTime,System.String,Csla.SmartDate.EmptyValue)">
            <summary>
            Converts a date value into a text representation.
            </summary>
            <remarks>
            Whether the date value is considered empty is determined by
            the EmptyIsMin parameter value. If the date is empty, this
            method returns an empty string. Otherwise it returns the date
            value formatted based on the FormatString parameter.
            </remarks>
            <param name="value">The date value to convert.</param>
            <param name="formatString">The format string used to format the date into text.</param>
            <param name="emptyValue">Indicates whether an empty date is the min or max date value.</param>
            <returns>Text representation of the date value.</returns>
        </member>
        <member name="M:Csla.SmartDate.CompareTo(Csla.SmartDate)">
            <summary>
            Compares one SmartDate to another.
            </summary>
            <remarks>
            This method works the same as the DateTime.CompareTo method
            on the Date datetype, with the exception that it
            understands the concept of empty date values.
            </remarks>
            <param name="value">The date to which we are being compared.</param>
            <returns>A value indicating if the comparison date is less than, equal to or greater than this date.</returns>
        </member>
        <member name="M:Csla.SmartDate.System#IComparable#CompareTo(System.Object)">
            <summary>
            Compares one SmartDate to another.
            </summary>
            <remarks>
            This method works the same as the DateTime.CompareTo method
            on the Date datetype, with the exception that it
            understands the concept of empty date values.
            </remarks>
            <param name="value">The date to which we are being compared.</param>
            <returns>A value indicating if the comparison date is less than, equal to or greater than this date.</returns>
        </member>
        <member name="M:Csla.SmartDate.CompareTo(System.String)">
            <summary>
            Compares a SmartDate to a text date value.
            </summary>
            <param name="value">The date to which we are being compared.</param>
            <returns>A value indicating if the comparison date is less than, equal to or greater than this date.</returns>
        </member>
        <member name="M:Csla.SmartDate.CompareTo(System.DateTime)">
            <summary>
            Compares a SmartDate to a date value.
            </summary>
            <param name="value">The date to which we are being compared.</param>
            <returns>A value indicating if the comparison date is less than, equal to or greater than this date.</returns>
        </member>
        <member name="M:Csla.SmartDate.Add(System.TimeSpan)">
            <summary>
            Adds a TimeSpan onto the object.
            </summary>
            <param name="value">Span to add to the date.</param>
        </member>
        <member name="M:Csla.SmartDate.Subtract(System.TimeSpan)">
            <summary>
            Subtracts a TimeSpan from the object.
            </summary>
            <param name="value">Span to subtract from the date.</param>
        </member>
        <member name="M:Csla.SmartDate.Subtract(System.DateTime)">
            <summary>
            Subtracts a DateTime from the object.
            </summary>
            <param name="value">Date to subtract from the date.</param>
        </member>
        <member name="M:Csla.SmartDate.op_Equality(Csla.SmartDate,Csla.SmartDate)">
            <summary>
            Equality operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_Inequality(Csla.SmartDate,Csla.SmartDate)">
            <summary>
            Inequality operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_Equality(Csla.SmartDate,System.DateTime)">
            <summary>
            Equality operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_Inequality(Csla.SmartDate,System.DateTime)">
            <summary>
            Inequality operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_Equality(Csla.SmartDate,System.String)">
            <summary>
            Equality operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_Inequality(Csla.SmartDate,System.String)">
            <summary>
            Inequality operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_Addition(Csla.SmartDate,System.TimeSpan)">
            <summary>
            Addition operator
            </summary>
            <param name="start">Original date/time</param>
            <param name="span">Span to add</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_Subtraction(Csla.SmartDate,System.TimeSpan)">
            <summary>
            Subtraction operator
            </summary>
            <param name="start">Original date/time</param>
            <param name="span">Span to subtract</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_Subtraction(Csla.SmartDate,Csla.SmartDate)">
            <summary>
            Subtraction operator
            </summary>
            <param name="start">Original date/time</param>
            <param name="finish">Second date/time</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_GreaterThan(Csla.SmartDate,Csla.SmartDate)">
            <summary>
            Greater than operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_LessThan(Csla.SmartDate,Csla.SmartDate)">
            <summary>
            Less than operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_GreaterThan(Csla.SmartDate,System.DateTime)">
            <summary>
            Greater than operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_LessThan(Csla.SmartDate,System.DateTime)">
            <summary>
            Less than operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_GreaterThan(Csla.SmartDate,System.String)">
            <summary>
            Greater than operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_LessThan(Csla.SmartDate,System.String)">
            <summary>
            Less than operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_GreaterThanOrEqual(Csla.SmartDate,Csla.SmartDate)">
            <summary>
            Greater than or equals operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_LessThanOrEqual(Csla.SmartDate,Csla.SmartDate)">
            <summary>
            Less than or equals operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_GreaterThanOrEqual(Csla.SmartDate,System.DateTime)">
            <summary>
            Greater than or equals operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_LessThanOrEqual(Csla.SmartDate,System.DateTime)">
            <summary>
            Less than or equals operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_GreaterThanOrEqual(Csla.SmartDate,System.String)">
            <summary>
            Greater than or equals operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="M:Csla.SmartDate.op_LessThanOrEqual(Csla.SmartDate,System.String)">
            <summary>
            Less than or equals operator
            </summary>
            <param name="obj1">First object</param>
            <param name="obj2">Second object</param>
            <returns></returns>
        </member>
        <member name="P:Csla.SmartDate.FormatString">
            <summary>
            Gets or sets the format string used to format a date
            value when it is returned as text.
            </summary>
            <remarks>
            The format string should follow the requirements for the
            .NET System.String.Format statement.
            </remarks>
            <value>A format string.</value>
        </member>
        <member name="P:Csla.SmartDate.Text">
            <summary>
            Gets or sets the date value.
            </summary>
            <remarks>
            <para>
            This property can be used to set the date value by passing a
            text representation of the date. Any text date representation
            that can be parsed by the .NET runtime is valid.
            </para><para>
            When the date value is retrieved via this property, the text
            is formatted by using the format specified by the 
            <see cref="P:Csla.SmartDate.FormatString"/> property. The default is the
            short date format (d).
            </para>
            </remarks>
        </member>
        <member name="P:Csla.SmartDate.Date">
            <summary>
            Gets or sets the date value.
            </summary>
        </member>
        <member name="P:Csla.SmartDate.DBValue">
            <summary>
            Gets a database-friendly version of the date value.
            </summary>
            <remarks>
            <para>
            If the SmartDate contains an empty date, this returns <see cref="T:System.DBNull"/>.
            Otherwise the actual date value is returned as type Date.
            </para><para>
            This property is very useful when setting parameter values for
            a Command object, since it automatically stores null values into
            the database for empty date values.
            </para><para>
            When you also use the SafeDataReader and its GetSmartDate method,
            you can easily read a null value from the database back into a
            SmartDate object so it remains considered as an empty date value.
            </para>
            </remarks>
        </member>
        <member name="P:Csla.SmartDate.IsEmpty">
            <summary>
            Gets a value indicating whether this object contains an empty date.
            </summary>
        </member>
        <member name="P:Csla.SmartDate.EmptyIsMin">
            <summary>
            Gets a value indicating whether an empty date is the 
            min or max possible date value.
            </summary>
            <remarks>
            Whether an empty date is considered to be the smallest or largest possible
            date is only important for comparison operations. This allows you to
            compare an empty date with a real date and get a meaningful result.
            </remarks>
        </member>
        <member name="T:Csla.SmartDate.EmptyValue">
            <summary>
            Indicates the empty value of a
            SmartDate.
            </summary>
        </member>
        <member name="F:Csla.SmartDate.EmptyValue.MinDate">
            <summary>
            Indicates that an empty SmartDate
            is the smallest date.
            </summary>
        </member>
        <member name="F:Csla.SmartDate.EmptyValue.MaxDate">
            <summary>
            Indicates that an empty SmartDate
            is the largest date.
            </summary>
        </member>
        <member name="T:Csla.SortedBindingList`1">
            <summary>
            Provides a sorted view into an existing IList(Of T).
            </summary>
            <typeparam name="T">
            Type of child object contained by
            the original list or collection.
            </typeparam>
        </member>
        <member name="M:Csla.SortedBindingList`1.GetEnumerator">
            <summary>
            Returns an enumerator for the list, honoring
            any sort that is active at the time.
            </summary>
        </member>
        <member name="M:Csla.SortedBindingList`1.AddIndex(System.ComponentModel.PropertyDescriptor)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="property">Property on which
            to build the index.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.AddNew">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="M:Csla.SortedBindingList`1.ApplySort(System.String,System.ComponentModel.ListSortDirection)">
            <summary>
            Applies a sort to the view.
            </summary>
            <param name="propertyName">The text name of the property on which to sort.</param>
            <param name="direction">The direction to sort the data.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.ApplySort(System.ComponentModel.PropertyDescriptor,System.ComponentModel.ListSortDirection)">
            <summary>
            Applies a sort to the view.
            </summary>
            <param name="property">A PropertyDescriptor for the property on which to sort.</param>
            <param name="direction">The direction to sort the data.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.Find(System.String,System.Object)">
            <summary>
            Finds an item in the view
            </summary>
            <param name="propertyName">Name of the property to search</param>
            <param name="key">Value to find</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.Find(System.ComponentModel.PropertyDescriptor,System.Object)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="key">Key value for which to search.</param>
            <param name="property">Property to search for the key
            value.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.OnListChanged(System.ComponentModel.ListChangedEventArgs)">
            <summary>
            Raises the <see cref="E:Csla.SortedBindingList`1.ListChanged"/> event.
            </summary>
            <param name="e">Event arguments.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.RemoveIndex(System.ComponentModel.PropertyDescriptor)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="property">Property for which the
            index should be removed.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.RemoveSort">
            <summary>
            Removes any sort currently applied to the view.
            </summary>
        </member>
        <member name="M:Csla.SortedBindingList`1.CopyTo(`0[],System.Int32)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="array">Array to receive the data.</param>
            <param name="arrayIndex">Starting array index.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.Add(`0)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="item">Item to add to the list.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.Clear">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="M:Csla.SortedBindingList`1.Contains(`0)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="item">Item for which to search.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.IndexOf(`0)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="item">Item for which to search.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.Insert(System.Int32,`0)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="index">Index at
            which to insert the item.</param>
            <param name="item">Item to insert.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.Remove(`0)">
            <summary>
            Implemented by IList source object.
            </summary>
            <param name="item">Item to be removed.</param>
        </member>
        <member name="M:Csla.SortedBindingList`1.RemoveAt(System.Int32)">
            <summary>
            Removes the child object at the specified index
            in the list, resorting the display as needed.
            </summary>
            <param name="index">The index of the object to remove.</param>
            <remarks>
            See Chapter 5 for details on how and why the list is
            altered during the remove process.
            </remarks>
        </member>
        <member name="M:Csla.SortedBindingList`1.#ctor(System.Collections.Generic.IList{`0})">
            <summary>
            Creates a new view based on the provided IList object.
            </summary>
            <param name="list">The IList (collection) containing the data.</param>
        </member>
        <member name="P:Csla.SortedBindingList`1.AllowEdit">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.AllowNew">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.AllowRemove">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.IsSorted">
            <summary>
            Gets a value indicating whether the view is currently sorted.
            </summary>
        </member>
        <member name="E:Csla.SortedBindingList`1.ListChanged">
            <summary>
            Raised to indicate that the list's data has changed.
            </summary>
            <remarks>
            This event is raised if the underling IList object's data changes
            (assuming the underling IList also implements the IBindingList
            interface). It is also raised if the sort property or direction
            is changed to indicate that the view's data has changed. See
            Chapter 5 for details.
            </remarks>
        </member>
        <member name="P:Csla.SortedBindingList`1.SortDirection">
            <summary>
            Returns the direction of the current sort.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.SortProperty">
            <summary>
            Returns the PropertyDescriptor of the current sort.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.SupportsChangeNotification">
            <summary>
            Returns <see langword="true"/> since this object does raise the
            ListChanged event.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.SupportsSearching">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.SupportsSorting">
            <summary>
            Returns <see langword="true"/>. Sorting is supported.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.Count">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.IsReadOnly">
            <summary>
            Implemented by IList source object.
            </summary>
        </member>
        <member name="P:Csla.SortedBindingList`1.Item(System.Int32)">
            <summary>
            Gets the child item at the specified index in the list,
            honoring the sort order of the items.
            </summary>
            <param name="index">The index of the item in the sorted list.</param>
        </member>
        <member name="T:Csla.Utilities">
            <summary>
            Contains utility methods used by the
            CSLA .NET framework.
            </summary>
        </member>
        <member name="M:Csla.Utilities.IsNumeric(System.Object)">
            <summary>
            Determines whether the specified
            value can be converted to a valid number.
            </summary>
        </member>
        <member name="M:Csla.Utilities.CallByName(System.Object,System.String,Csla.CallType,System.Object[])">
            <summary>
            Allows late bound invocation of
            properties and methods.
            </summary>
            <param name="target">Object implementing the property or method.</param>
            <param name="methodName">Name of the property or method.</param>
            <param name="callType">Specifies how to invoke the property or method.</param>
            <param name="args">List of arguments to pass to the method.</param>
            <returns>The result of the property or method invocation.</returns>
        </member>
        <member name="M:Csla.Utilities.GetPropertyType(System.Type)">
            <summary>
            Returns a property's type, dealing with
            Nullable(Of T) if necessary.
            </summary>
            <param name="propertyType">Type of the
            property as returned by reflection.</param>
        </member>
        <member name="M:Csla.Utilities.GetChildItemType(System.Type)">
            <summary>
            Returns the type of child object
            contained in a collection or list.
            </summary>
            <param name="listType">Type of the list.</param>
        </member>
        <member name="T:Csla.CallType">
            <summary>
            Valid options for calling a property or method
            via the <see cref="M:Csla.Utilities.CallByName(System.Object,System.String,Csla.CallType,System.Object[])"/> method.
            </summary>
        </member>
        <member name="F:Csla.CallType.Get">
            <summary>
            Gets a value from a property.
            </summary>
        </member>
        <member name="F:Csla.CallType.Let">
            <summary>
            Sets a value into a property.
            </summary>
        </member>
        <member name="F:Csla.CallType.Method">
            <summary>
            Invokes a method.
            </summary>
        </member>
        <member name="F:Csla.CallType.Set">
            <summary>
            Sets a value into a property.
            </summary>
        </member>
        <member name="T:Csla.Validation.BrokenRule">
            <summary>
            Stores details about a specific broken business rule.
            </summary>
        </member>
        <member name="P:Csla.Validation.BrokenRule.RuleName">
            <summary>
            Provides access to the name of the broken rule.
            </summary>
            <value>The name of the rule.</value>
        </member>
        <member name="P:Csla.Validation.BrokenRule.Description">
            <summary>
            Provides access to the description of the broken rule.
            </summary>
            <value>The description of the rule.</value>
        </member>
        <member name="P:Csla.Validation.BrokenRule.Property">
            <summary>
            Provides access to the property affected by the broken rule.
            </summary>
            <value>The property affected by the rule.</value>
        </member>
        <member name="P:Csla.Validation.BrokenRule.Severity">
            <summary>
            Gets the severity of the broken rule.
            </summary>
            <value></value>
            <returns></returns>
            <remarks></remarks>
        </member>
        <member name="T:Csla.Validation.BrokenRulesCollection">
            <summary>
            A collection of currently broken rules.
            </summary>
            <remarks>
            This collection is readonly and can be safely made available
            to code outside the business object such as the UI. This allows
            external code, such as a UI, to display the list of broken rules
            to the user.
            </remarks>
        </member>
        <member name="M:Csla.Validation.BrokenRulesCollection.GetFirstBrokenRule(System.String)">
            <summary>
            Returns the first <see cref="T:Csla.Validation.BrokenRule"/> object
            corresponding to the specified property.
            </summary>
            <remarks>
            Code in a business object or UI can also use this value to retrieve
            the first broken rule in <see cref="T:Csla.Validation.BrokenRulesCollection"/> that corresponds
            to a specfic property on the object.
            </remarks>
            <param name="property">The name of the property affected by the rule.</param>
            <returns>
            The first BrokenRule object corresponding to the specified property, or null if 
            there are no rules defined for the property.
            </returns>
        </member>
        <member name="M:Csla.Validation.BrokenRulesCollection.GetFirstMessage(System.String)">
            <summary>
            Returns the first <see cref="T:Csla.Validation.BrokenRule"/> object
            corresponding to the specified property.
            </summary>
            <remarks>
            Code in a business object or UI can also use this value to retrieve
            the first broken rule in <see cref="T:Csla.Validation.BrokenRulesCollection"/> that corresponds
            to a specfic property.
            </remarks>
            <param name="property">The name of the property affected by the rule.</param>
            <returns>
            The first BrokenRule object corresponding to the specified property, or Nothing
            (null in C#) if there are no rules defined for the property.
            </returns>
        </member>
        <member name="M:Csla.Validation.BrokenRulesCollection.GetFirstMessage(System.String,Csla.Validation.RuleSeverity)">
            <summary>
            Returns the first <see cref="T:Csla.Validation.BrokenRule"/> object
            corresponding to the specified property
            and severity.
            </summary>
            <param name="property">The name of the property affected by the rule.</param>
            <param name="severity">The severity of broken rule to return.</param>
            <returns>
            The first BrokenRule object corresponding to the specified property, or Nothing
            (null in C#) if there are no rules defined for the property.
            </returns>
        </member>
        <member name="M:Csla.Validation.BrokenRulesCollection.ToString">
            <summary>
            Returns the text of all broken rule descriptions, each
            separated by a <see cref="P:System.Environment.NewLine"/>.
            </summary>
            <returns>The text of all broken rule descriptions.</returns>
        </member>
        <member name="M:Csla.Validation.BrokenRulesCollection.ToString(Csla.Validation.RuleSeverity)">
            <summary>
            Returns the text of all broken rule descriptions, each
            separated by a <see cref="P:System.Environment.NewLine"/>.
            </summary>
            <param name="severity">The severity of rules to
            include in the result.</param>
            <returns>The text of all broken rule descriptions
            matching the specified severtiy.</returns>
        </member>
        <member name="M:Csla.Validation.BrokenRulesCollection.ToArray">
            <summary>
            Returns a string array containing all broken
            rule descriptions.
            </summary>
            <returns>The text of all broken rule descriptions
            matching the specified severtiy.</returns>
        </member>
        <member name="M:Csla.Validation.BrokenRulesCollection.ToArray(Csla.Validation.RuleSeverity)">
            <summary>
            Returns a string array containing all broken
            rule descriptions.
            </summary>
            <param name="severity">The severity of rules
            to include in the result.</param>
            <returns>The text of all broken rule descriptions
            matching the specified severtiy.</returns>
        </member>
        <member name="P:Csla.Validation.BrokenRulesCollection.ErrorCount">
            <summary>
            Gets the number of broken rules in
            the collection that have a severity
            of Error.
            </summary>
            <value>An integer value.</value>
        </member>
        <member name="P:Csla.Validation.BrokenRulesCollection.WarningCount">
            <summary>
            Gets the number of broken rules in
            the collection that have a severity
            of Warning.
            </summary>
            <value>An integer value.</value>
        </member>
        <member name="P:Csla.Validation.BrokenRulesCollection.InformationCount">
            <summary>
            Gets the number of broken rules in
            the collection that have a severity
            of Information.
            </summary>
            <value>An integer value.</value>
        </member>
        <member name="T:Csla.Validation.CommonRules">
            <summary>
            Implements common business rules.
            </summary>
        </member>
        <member name="M:Csla.Validation.CommonRules.StringRequired(System.Object,Csla.Validation.RuleArgs)">
            <summary>
            Rule ensuring a string value contains one or more
            characters.
            </summary>
            <param name="target">Object containing the data to validate</param>
            <param name="e">Arguments parameter specifying the name of the string
            property to validate</param>
            <returns><see langword="false" /> if the rule is broken</returns>
            <remarks>
            This implementation uses late binding, and will only work
            against string property values.
            </remarks>
        </member>
        <member name="M:Csla.Validation.CommonRules.StringMaxLength(System.Object,Csla.Validation.RuleArgs)">
            <summary>
            Rule ensuring a string value doesn't exceed
            a specified length.
            </summary>
            <param name="target">Object containing the data to validate</param>
            <param name="e">Arguments parameter specifying the name of the string
            property to validate</param>
            <returns><see langword="false" /> if the rule is broken</returns>
            <remarks>
            This implementation uses late binding, and will only work
            against string property values.
            </remarks>
        </member>
        <member name="M:Csla.Validation.CommonRules.IntegerMaxValue(System.Object,Csla.Validation.RuleArgs)">
            <summary>
            Rule ensuring an integer value doesn't exceed
            a specified value.
            </summary>
            <param name="target">Object containing the data to validate.</param>
            <param name="e">Arguments parameter specifying the name of the
            property to validate.</param>
            <returns><see langword="false"/> if the rule is broken.</returns>
        </member>
        <member name="M:Csla.Validation.CommonRules.IntegerMinValue(System.Object,Csla.Validation.RuleArgs)">
            <summary>
            Rule ensuring an integer value doesn't go below
            a specified value.
            </summary>
            <param name="target">Object containing the data to validate.</param>
            <param name="e">Arguments parameter specifying the name of the
            property to validate.</param>
            <returns><see langword="false"/> if the rule is broken.</returns>
        </member>
        <member name="M:Csla.Validation.CommonRules.MaxValue``1(System.Object,Csla.Validation.RuleArgs)">
            <summary>
            Rule ensuring that a numeric value
            doesn't exceed a specified maximum.
            </summary>
            <typeparam name="T">Type of the property to validate.</typeparam>
            <param name="target">Object containing value to validate.</param>
            <param name="e">Arguments variable specifying the
            name of the property to validate, along with the max
            allowed value.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.MinValue``1(System.Object,Csla.Validation.RuleArgs)">
            <summary>
            Rule ensuring that a numeric value
            doesn't exceed a specified minimum.
            </summary>
            <typeparam name="T">Type of the property to validate.</typeparam>
            <param name="target">Object containing value to validate.</param>
            <param name="e">Arguments variable specifying the
            name of the property to validate, along with the min
            allowed value.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.RegExMatch(System.Object,Csla.Validation.RuleArgs)">
            <summary>
            Rule that checks to make sure a value
            matches a given regex pattern.
            </summary>
            <param name="target">Object containing the data to validate</param>
            <param name="e">RegExRuleArgs parameter specifying the name of the 
            property to validate and the regex pattern.</param>
            <returns>False if the rule is broken</returns>
            <remarks>
            This implementation uses late binding.
            </remarks>
        </member>
        <member name="T:Csla.Validation.CommonRules.MaxLengthRuleArgs">
            <summary>
            Custom <see cref="T:Csla.Validation.RuleArgs"/> object required by the
            <see cref="M:Csla.Validation.CommonRules.StringMaxLength(System.Object,Csla.Validation.RuleArgs)"/> rule method.
            </summary>
        </member>
        <member name="T:Csla.Validation.RuleArgs">
            <summary>
            Object providing extra information to methods that
            implement business rules.
            </summary>
        </member>
        <member name="M:Csla.Validation.RuleArgs.#ctor(System.String)">
            <summary>
            Creates an instance of RuleArgs.
            </summary>
            <param name="propertyName">The name of the property to be validated.</param>
        </member>
        <member name="M:Csla.Validation.RuleArgs.ToString">
            <summary>
            Return a string representation of the object.
            </summary>
        </member>
        <member name="P:Csla.Validation.RuleArgs.PropertyName">
            <summary>
            The name of the property to be validated.
            </summary>
        </member>
        <member name="P:Csla.Validation.RuleArgs.Description">
            <summary>
            Set by the rule handler method to describe the broken
            rule.
            </summary>
            <value>A human-readable description of
            the broken rule.</value>
            <remarks>
            Setting this property only has an effect if
            the rule method returns <see langword="false" />.
            </remarks>
        </member>
        <member name="P:Csla.Validation.RuleArgs.Severity">
            <summary>
            Gets or sets the severity of the broken rule.
            </summary>
            <value>The severity of the broken rule.</value>
            <remarks>
            Setting this property only has an effect if
            the rule method returns <see langword="false" />.
            </remarks>
        </member>
        <member name="P:Csla.Validation.RuleArgs.StopProcessing">
            <summary>
            Gets or sets a value indicating whether this
            broken rule should stop the processing of subsequent
            rules for this property.
            </summary>
            <value><see langword="true" /> if no further
            rules should be process for this property.</value>
            <remarks>
            Setting this property only has an effect if
            the rule method returns <see langword="false" />.
            </remarks>
        </member>
        <member name="M:Csla.Validation.CommonRules.MaxLengthRuleArgs.#ctor(System.String,System.Int32)">
            <summary>
            Create a new object.
            </summary>
            <param name="propertyName">Name of the property to validate.</param>
            <param name="maxLength">Max length of characters allowed.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.MaxLengthRuleArgs.ToString">
            <summary>
            Return a string representation of the object.
            </summary>
        </member>
        <member name="P:Csla.Validation.CommonRules.MaxLengthRuleArgs.MaxLength">
            <summary>
            Get the max length for the string.
            </summary>
        </member>
        <member name="T:Csla.Validation.CommonRules.IntegerMaxValueRuleArgs">
            <summary>
            Custom <see cref="T:Csla.Validation.RuleArgs"/> object required by the
            <see cref="M:Csla.Validation.CommonRules.IntegerMaxValue(System.Object,Csla.Validation.RuleArgs)"/> rule method.
            </summary>
        </member>
        <member name="M:Csla.Validation.CommonRules.IntegerMaxValueRuleArgs.#ctor(System.String,System.Int32)">
            <summary>
            Create a new object.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="maxValue">Maximum allowed value for the property.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.IntegerMaxValueRuleArgs.ToString">
            <summary>
            Return a string representation of the object.
            </summary>
        </member>
        <member name="P:Csla.Validation.CommonRules.IntegerMaxValueRuleArgs.MaxValue">
            <summary>
            Get the max value for the property.
            </summary>
        </member>
        <member name="T:Csla.Validation.CommonRules.IntegerMinValueRuleArgs">
            <summary>
            Custom <see cref="T:Csla.Validation.RuleArgs"/> object required by the
            <see cref="M:Csla.Validation.CommonRules.IntegerMinValue(System.Object,Csla.Validation.RuleArgs)"/> rule method.
            </summary>
        </member>
        <member name="M:Csla.Validation.CommonRules.IntegerMinValueRuleArgs.#ctor(System.String,System.Int32)">
            <summary>
            Create a new object.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="minValue">Minimum allowed value for the property.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.IntegerMinValueRuleArgs.ToString">
            <summary>
            Return a string representation of the object.
            </summary>
        </member>
        <member name="P:Csla.Validation.CommonRules.IntegerMinValueRuleArgs.MinValue">
            <summary>
            Get the min value for the property.
            </summary>
        </member>
        <member name="T:Csla.Validation.CommonRules.MaxValueRuleArgs`1">
            <summary>
            Custom <see cref="T:Csla.Validation.RuleArgs"/> object required by the
            <see cref="P:Csla.Validation.CommonRules.MaxValueRuleArgs`1.MaxValue"/> rule method.
            </summary>
            <typeparam name="T">Type of the property to validate.</typeparam>
        </member>
        <member name="M:Csla.Validation.CommonRules.MaxValueRuleArgs`1.#ctor(System.String,`0)">
            <summary>
            Create a new object.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="maxValue">Maximum allowed value for the property.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.MaxValueRuleArgs`1.ToString">
            <summary>
            Returns a string representation of the object.
            </summary>
        </member>
        <member name="P:Csla.Validation.CommonRules.MaxValueRuleArgs`1.MaxValue">
            <summary>
            Get the max value for the property.
            </summary>
        </member>
        <member name="T:Csla.Validation.CommonRules.MinValueRuleArgs`1">
            <summary>
            Custom <see cref="T:Csla.Validation.RuleArgs"/> object required by the
            <see cref="P:Csla.Validation.CommonRules.MinValueRuleArgs`1.MinValue"/> rule method.
            </summary>
            <typeparam name="T">Type of the property to validate.</typeparam>
        </member>
        <member name="M:Csla.Validation.CommonRules.MinValueRuleArgs`1.#ctor(System.String,`0)">
            <summary>
            Create a new object.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="minValue">Minimum allowed value for the property.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.MinValueRuleArgs`1.ToString">
            <summary>
            Returns a string representation of the object.
            </summary>
        </member>
        <member name="P:Csla.Validation.CommonRules.MinValueRuleArgs`1.MinValue">
            <summary>
            Get the min value for the property.
            </summary>
        </member>
        <member name="T:Csla.Validation.CommonRules.RegExPatterns">
            <summary>
            List of built-in regex patterns.
            </summary>
        </member>
        <member name="F:Csla.Validation.CommonRules.RegExPatterns.SSN">
            <summary>
            US Social Security number pattern.
            </summary>
        </member>
        <member name="F:Csla.Validation.CommonRules.RegExPatterns.Email">
            <summary>
            Email address pattern.
            </summary>
        </member>
        <member name="T:Csla.Validation.CommonRules.RegExRuleArgs">
            <summary>
            Custom <see cref="T:Csla.Validation.RuleArgs"/> object required by the
            <see cref="M:Csla.Validation.CommonRules.RegExMatch(System.Object,Csla.Validation.RuleArgs)"/> rule method.
            </summary>
        </member>
        <member name="M:Csla.Validation.CommonRules.RegExRuleArgs.#ctor(System.String,Csla.Validation.CommonRules.RegExPatterns)">
            <summary>
            Creates a new object.
            </summary>
            <param name="propertyName">Name of the property to validate.</param>
            <param name="pattern">Built-in regex pattern to use.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.RegExRuleArgs.#ctor(System.String,System.String)">
            <summary>
            Creates a new object.
            </summary>
            <param name="propertyName">Name of the property to validate.</param>
            <param name="pattern">Custom regex pattern to use.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.RegExRuleArgs.#ctor(System.String,System.Text.RegularExpressions.Regex)">
            <summary>
            Creates a new object.
            </summary>
            <param name="propertyName">Name of the property to validate.</param>
            <param name="regEx"><see cref="P:Csla.Validation.CommonRules.RegExRuleArgs.RegEx"/> object to use.</param>
        </member>
        <member name="M:Csla.Validation.CommonRules.RegExRuleArgs.ToString">
            <summary>f
            Returns a string representation of the object.
            </summary>
        </member>
        <member name="M:Csla.Validation.CommonRules.RegExRuleArgs.GetPattern(Csla.Validation.CommonRules.RegExPatterns)">
            <summary>
            Returns the specified built-in regex pattern.
            </summary>
            <param name="pattern">Pattern to return.</param>
        </member>
        <member name="P:Csla.Validation.CommonRules.RegExRuleArgs.RegEx">
            <summary>
            The <see cref="P:Csla.Validation.CommonRules.RegExRuleArgs.RegEx"/> object used to validate
            the property.
            </summary>
        </member>
        <member name="T:Csla.Validation.IRuleMethod">
            <summary>
            Tracks all information for a rule.
            </summary>
        </member>
        <member name="M:Csla.Validation.IRuleMethod.Invoke(System.Object)">
            <summary>
            Invokes the rule to validate the data.
            </summary>
            <returns>
            <see langword="true" /> if the data is valid, 
            <see langword="false" /> if the data is invalid.
            </returns>
        </member>
        <member name="P:Csla.Validation.IRuleMethod.Priority">
            <summary>
            Gets the priority of the rule method.
            </summary>
            <value>The priority value.</value>
            <remarks>
            Priorities are processed in descending
            order, so priority 0 is processed
            before priority 1, etc.</remarks>
        </member>
        <member name="P:Csla.Validation.IRuleMethod.RuleName">
            <summary>
            Gets the name of the rule.
            </summary>
            <remarks>
            The rule's name must be unique and is used
            to identify a broken rule in the BrokenRules
            collection.
            </remarks>
        </member>
        <member name="P:Csla.Validation.IRuleMethod.RuleArgs">
            <summary>
            Returns the name of the field, property or column
            to which the rule applies.
            </summary>
        </member>
        <member name="T:Csla.Validation.RuleHandler">
            <summary>
            Delegate that defines the method signature for all rule handler methods.
            </summary>
            <param name="target">
            Object containing the data to be validated.
            </param>
            <param name="e">
            Parameter used to pass information to and from
            the rule method.
            </param>
            <returns>
            <see langword="true" /> if the rule was satisfied.
            </returns>
            <remarks>
            <para>
            When implementing a rule handler, you must conform to the method signature
            defined by this delegate. You should also apply the Description attribute
            to your method to provide a meaningful description for your rule.
            </para><para>
            The method implementing the rule must return 
            <see langword="true"/> if the data is valid and
            return <see langword="false"/> if the data is invalid.
            </para>
            </remarks>
        </member>
        <member name="T:Csla.Validation.RuleHandler`2">
            <summary>
            Delegate that defines the method signature for all rule handler methods.
            </summary>
            <typeparam name="T">Type of the target object.</typeparam>
            <typeparam name="R">Type of the arguments parameter.</typeparam>
            <param name="target">
            Object containing the data to be validated.
            </param>
            <param name="e">
            Parameter used to pass information to and from
            the rule method.
            </param>
            <returns>
            <see langword="true" /> if the rule was satisfied.
            </returns>
            <remarks>
            <para>
            When implementing a rule handler, you must conform to the method signature
            defined by this delegate. You should also apply the Description attribute
            to your method to provide a meaningful description for your rule.
            </para><para>
            The method implementing the rule must return 
            <see langword="true"/> if the data is valid and
            return <see langword="false"/> if the data is invalid.
            </para>
            </remarks>
        </member>
        <member name="T:Csla.Validation.RuleMethod">
            <summary>
            Tracks all information for a rule.
            </summary>
        </member>
        <member name="M:Csla.Validation.RuleMethod.ToString">
            <summary>
            Returns the name of the method implementing the rule
            and the property, field or column name to which the
            rule applies.
            </summary>
        </member>
        <member name="M:Csla.Validation.RuleMethod.#ctor(Csla.Validation.RuleHandler,Csla.Validation.RuleArgs)">
            <summary>
            Creates and initializes the rule.
            </summary>
            <param name="handler">The address of the method implementing the rule.</param>
            <param name="args">A RuleArgs object.</param>
        </member>
        <member name="M:Csla.Validation.RuleMethod.#ctor(Csla.Validation.RuleHandler,Csla.Validation.RuleArgs,System.Int32)">
            <summary>
            Creates and initializes the rule.
            </summary>
            <param name="handler">The address of the method implementing the rule.</param>
            <param name="args">A RuleArgs object.</param>
            <param name="priority">
            Priority for processing the rule (smaller numbers have higher priority, default=0).
            </param>
        </member>
        <member name="M:Csla.Validation.RuleMethod.Invoke(System.Object)">
            <summary>
            Invokes the rule to validate the data.
            </summary>
            <returns>
            <see langword="true" /> if the data is valid, 
            <see langword="false" /> if the data is invalid.
            </returns>
        </member>
        <member name="P:Csla.Validation.RuleMethod.Priority">
            <summary>
            Gets the priority of the rule method.
            </summary>
            <value>The priority value</value>
            <remarks>
            Priorities are processed in descending
            order, so priority 0 is processed
            before priority 1, etc.
            </remarks>
        </member>
        <member name="P:Csla.Validation.RuleMethod.RuleName">
            <summary>
            Gets the name of the rule.
            </summary>
            <remarks>
            The rule's name must be unique and is used
            to identify a broken rule in the BrokenRules
            collection.
            </remarks>
        </member>
        <member name="P:Csla.Validation.RuleMethod.RuleArgs">
            <summary>
            Returns the name of the field, property or column
            to which the rule applies.
            </summary>
        </member>
        <member name="T:Csla.Validation.RuleMethod`2">
            <summary>
            Tracks all information for a rule.
            </summary>
            <typeparam name="T">Type of the target object.</typeparam>
            <typeparam name="R">Type of the arguments parameter.</typeparam>
        </member>
        <member name="M:Csla.Validation.RuleMethod`2.ToString">
            <summary>
            Returns the name of the method implementing the rule
            and the property, field or column name to which the
            rule applies.
            </summary>
        </member>
        <member name="M:Csla.Validation.RuleMethod`2.#ctor(Csla.Validation.RuleHandler{`0,`1},`1)">
            <summary>
            Creates and initializes the rule.
            </summary>
            <param name="handler">The address of the method implementing the rule.</param>
            <param name="args">A RuleArgs object.</param>
        </member>
        <member name="M:Csla.Validation.RuleMethod`2.#ctor(Csla.Validation.RuleHandler{`0,`1},`1,System.Int32)">
            <summary>
            Creates and initializes the rule.
            </summary>
            <param name="handler">The address of the method implementing the rule.</param>
            <param name="args">A RuleArgs object.</param>
            <param name="priority">
            Priority for processing the rule (smaller numbers have higher priority, default=0).
            </param>
        </member>
        <member name="M:Csla.Validation.RuleMethod`2.Csla#Validation#IRuleMethod#Invoke(System.Object)">
            <summary>
            Invokes the rule to validate the data.
            </summary>
            <returns>True if the data is valid, False if the data is invalid.</returns>
        </member>
        <member name="M:Csla.Validation.RuleMethod`2.Invoke(`0)">
            <summary>
            Invokes the rule to validate the data.
            </summary>
            <returns>
            <see langword="true" /> if the data is valid, 
            <see langword="false" /> if the data is invalid.
            </returns>
        </member>
        <member name="P:Csla.Validation.RuleMethod`2.Priority">
            <summary>
            Gets the priority of the rule method.
            </summary>
            <value>The priority value</value>
            <remarks>
            Priorities are processed in descending
            order, so priority 0 is processed
            before priority 1, etc.
            </remarks>
        </member>
        <member name="P:Csla.Validation.RuleMethod`2.RuleName">
            <summary>
            Gets the name of the rule.
            </summary>
            <remarks>
            The rule's name must be unique and is used
            to identify a broken rule in the BrokenRules
            collection.
            </remarks>
        </member>
        <member name="P:Csla.Validation.RuleMethod`2.Csla#Validation#IRuleMethod#RuleArgs">
            <summary>
            Returns the name of the field, property or column
            to which the rule applies.
            </summary>
        </member>
        <member name="P:Csla.Validation.RuleMethod`2.RuleArgs">
            <summary>
            Returns the name of the field, property or column
            to which the rule applies.
            </summary>
        </member>
        <member name="T:Csla.Validation.RuleSeverity">
            <summary>
            Values for validation rule severities.
            </summary>
        </member>
        <member name="F:Csla.Validation.RuleSeverity.Error">
            <summary>
            Represents a serious
            business rule violation that
            should cause an object to
            be considered invalid.
            </summary>
        </member>
        <member name="F:Csla.Validation.RuleSeverity.Warning">
            <summary>
            Represents a business rule
            violation that should be
            displayed to the user, but which
            should not make an object be
            invalid.
            </summary>
        </member>
        <member name="F:Csla.Validation.RuleSeverity.Information">
            <summary>
            Represents a business rule
            result that should be displayed
            to the user, but which is less
            severe than a warning.
            </summary>
        </member>
        <member name="T:Csla.Validation.SharedValidationRules">
            <summary>
            Maintains a list of all the per-type
            <see cref="T:Csla.Validation.ValidationRulesManager"/> objects
            loaded in memory.
            </summary>
        </member>
        <member name="M:Csla.Validation.SharedValidationRules.GetManager(System.Type,System.Boolean)">
            <summary>
            Gets the <see cref="T:Csla.Validation.ValidationRulesManager"/> for the 
            specified object type, optionally creating a new instance 
            of the object if necessary.
            </summary>
            <param name="objectType">
            Type of business object for which the rules apply.
            </param>
            <param name="create">Indicates whether to create
            a new instance of the object if one doesn't exist.</param>
        </member>
        <member name="M:Csla.Validation.SharedValidationRules.RulesExistFor(System.Type)">
            <summary>
            Gets a value indicating whether a set of rules
            have been created for a given <see cref="T:System.Type"/>.
            </summary>
            <param name="objectType">
            Type of business object for which the rules apply.
            </param>
            <returns><see langword="true"/> if rules exist for the type.</returns>
        </member>
        <member name="T:Csla.Validation.ValidationException">
            <summary>
            Exception class indicating that there was a validation
            problem with a business object.
            </summary>
        </member>
        <member name="M:Csla.Validation.ValidationException.#ctor">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.Validation.ValidationException.#ctor(System.String)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="message">Message describing the exception.</param>
        </member>
        <member name="M:Csla.Validation.ValidationException.#ctor(System.String,System.Exception)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="message">Message describing the exception.</param>
            <param name="innerException">Inner exception object.</param>
        </member>
        <member name="M:Csla.Validation.ValidationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Creates an instance of the object for serialization.
            </summary>
            <param name="context">Serialization context.</param>
            <param name="info">Serialization info.</param>
        </member>
        <member name="T:Csla.Validation.ValidationRules">
            <summary>
            Tracks the business rules broken within a business object.
            </summary>
        </member>
        <member name="M:Csla.Validation.ValidationRules.GetRuleDescriptions">
            <summary>
            Returns an array containing the text descriptions of all
            validation rules associated with this object.
            </summary>
            <returns>String array.</returns>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddInstanceRule(Csla.Validation.RuleHandler,System.String)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            <para>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </para><para>
            The propertyName may be used by the method that implements the rule
            in order to retrieve the value to be validated. If the rule
            implementation is inside the target object then it probably has
            direct access to all data. However, if the rule implementation
            is outside the target object then it will need to use reflection
            or CallByName to dynamically invoke this property to retrieve
            the value to be validated.
            </para>
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="propertyName">
            The property name on the target object where the rule implementation can retrieve
            the value to be validated.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddInstanceRule(Csla.Validation.RuleHandler,System.String,System.Int32)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            <para>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </para><para>
            The propertyName may be used by the method that implements the rule
            in order to retrieve the value to be validated. If the rule
            implementation is inside the target object then it probably has
            direct access to all data. However, if the rule implementation
            is outside the target object then it will need to use reflection
            or CallByName to dynamically invoke this property to retrieve
            the value to be validated.
            </para>
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="propertyName">
            The property name on the target object where the rule implementation can retrieve
            the value to be validated.
            </param>
            <param name="priority">
            The priority of the rule, where lower numbers are processed first.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddInstanceRule``1(Csla.Validation.RuleHandler{``0,Csla.Validation.RuleArgs},System.String)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            <para>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </para><para>
            The propertyName may be used by the method that implements the rule
            in order to retrieve the value to be validated. If the rule
            implementation is inside the target object then it probably has
            direct access to all data. However, if the rule implementation
            is outside the target object then it will need to use reflection
            or CallByName to dynamically invoke this property to retrieve
            the value to be validated.
            </para>
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="propertyName">
            The property name on the target object where the rule implementation can retrieve
            the value to be validated.
            </param>
            <typeparam name="T">Type of the business object to be validated.</typeparam>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddInstanceRule``1(Csla.Validation.RuleHandler{``0,Csla.Validation.RuleArgs},System.String,System.Int32)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            <para>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </para><para>
            The propertyName may be used by the method that implements the rule
            in order to retrieve the value to be validated. If the rule
            implementation is inside the target object then it probably has
            direct access to all data. However, if the rule implementation
            is outside the target object then it will need to use reflection
            or CallByName to dynamically invoke this property to retrieve
            the value to be validated.
            </para>
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="propertyName">
            The property name on the target object where the rule implementation can retrieve
            the value to be validated.
            </param>
            <param name="priority">
            The priority of the rule, where lower numbers are processed first.
            </param>
            <typeparam name="T">Type of the business object to be validated.</typeparam>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddInstanceRule(Csla.Validation.RuleHandler,Csla.Validation.RuleArgs)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="args">
            A RuleArgs object specifying the property name and other arguments
            passed to the rule method
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddInstanceRule(Csla.Validation.RuleHandler,Csla.Validation.RuleArgs,System.Int32)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="args">
            A RuleArgs object specifying the property name and other arguments
            passed to the rule method
            </param>
            <param name="priority">
            The priority of the rule, where lower numbers are processed first.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddInstanceRule``2(Csla.Validation.RuleHandler{``0,``1},``1)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </remarks>
            <typeparam name="T">Type of the target object.</typeparam>
            <typeparam name="R">Type of the arguments parameter.</typeparam>
            <param name="handler">The method that implements the rule.</param>
            <param name="args">
            A RuleArgs object specifying the property name and other arguments
            passed to the rule method
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddInstanceRule``2(Csla.Validation.RuleHandler{``0,``1},``1,System.Int32)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </remarks>
            <typeparam name="T">Type of the target object.</typeparam>
            <typeparam name="R">Type of the arguments parameter.</typeparam>
            <param name="handler">The method that implements the rule.</param>
            <param name="args">
            A RuleArgs object specifying the property name and other arguments
            passed to the rule method
            </param>
            <param name="priority">
            The priority of the rule, where lower numbers are processed first.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddRule(Csla.Validation.RuleHandler,System.String)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            <para>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </para><para>
            The propertyName may be used by the method that implements the rule
            in order to retrieve the value to be validated. If the rule
            implementation is inside the target object then it probably has
            direct access to all data. However, if the rule implementation
            is outside the target object then it will need to use reflection
            or CallByName to dynamically invoke this property to retrieve
            the value to be validated.
            </para>
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="propertyName">
            The property name on the target object where the rule implementation can retrieve
            the value to be validated.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddRule(Csla.Validation.RuleHandler,System.String,System.Int32)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            <para>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </para><para>
            The propertyName may be used by the method that implements the rule
            in order to retrieve the value to be validated. If the rule
            implementation is inside the target object then it probably has
            direct access to all data. However, if the rule implementation
            is outside the target object then it will need to use reflection
            or CallByName to dynamically invoke this property to retrieve
            the value to be validated.
            </para>
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="propertyName">
            The property name on the target object where the rule implementation can retrieve
            the value to be validated.
            </param>
            <param name="priority">
            The priority of the rule, where lower numbers are processed first.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddRule``1(Csla.Validation.RuleHandler{``0,Csla.Validation.RuleArgs},System.String)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            <para>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </para><para>
            The propertyName may be used by the method that implements the rule
            in order to retrieve the value to be validated. If the rule
            implementation is inside the target object then it probably has
            direct access to all data. However, if the rule implementation
            is outside the target object then it will need to use reflection
            or CallByName to dynamically invoke this property to retrieve
            the value to be validated.
            </para>
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="propertyName">
            The property name on the target object where the rule implementation can retrieve
            the value to be validated.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddRule``1(Csla.Validation.RuleHandler{``0,Csla.Validation.RuleArgs},System.String,System.Int32)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            <para>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </para><para>
            The propertyName may be used by the method that implements the rule
            in order to retrieve the value to be validated. If the rule
            implementation is inside the target object then it probably has
            direct access to all data. However, if the rule implementation
            is outside the target object then it will need to use reflection
            or CallByName to dynamically invoke this property to retrieve
            the value to be validated.
            </para>
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="propertyName">
            The property name on the target object where the rule implementation can retrieve
            the value to be validated.
            </param>
            <param name="priority">
            The priority of the rule, where lower numbers are processed first.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddRule(Csla.Validation.RuleHandler,Csla.Validation.RuleArgs)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="args">
            A RuleArgs object specifying the property name and other arguments
            passed to the rule method
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddRule(Csla.Validation.RuleHandler,Csla.Validation.RuleArgs,System.Int32)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </remarks>
            <param name="handler">The method that implements the rule.</param>
            <param name="args">
            A RuleArgs object specifying the property name and other arguments
            passed to the rule method
            </param>
            <param name="priority">
            The priority of the rule, where lower numbers are processed first.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddRule``2(Csla.Validation.RuleHandler{``0,``1},``1)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </remarks>
            <typeparam name="T">Type of the target object.</typeparam>
            <typeparam name="R">Type of the arguments parameter.</typeparam>
            <param name="handler">The method that implements the rule.</param>
            <param name="args">
            A RuleArgs object specifying the property name and other arguments
            passed to the rule method
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddRule``2(Csla.Validation.RuleHandler{``0,``1},``1,System.Int32)">
            <summary>
            Adds a rule to the list of rules to be enforced.
            </summary>
            <remarks>
            A rule is implemented by a method which conforms to the 
            method signature defined by the RuleHandler delegate.
            </remarks>
            <typeparam name="T">Type of the target object.</typeparam>
            <typeparam name="R">Type of the arguments parameter.</typeparam>
            <param name="handler">The method that implements the rule.</param>
            <param name="args">
            A RuleArgs object specifying the property name and other arguments
            passed to the rule method
            </param>
            <param name="priority">
            The priority of the rule, where lower numbers are processed first.
            </param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddDependantProperty(System.String,System.String)">
            <summary>
            Adds a property to the list of dependencies for
            the specified property
            </summary>
            <param name="propertyName">
            The name of the property.
            </param>
            <param name="dependantPropertyName">
            The name of the depandent property.
            </param>
            <remarks>
            When rules are checked for propertyName, they will
            also be checked for any dependant properties associated
            with that property.
            </remarks>
        </member>
        <member name="M:Csla.Validation.ValidationRules.AddDependantProperty(System.String,System.String,System.Boolean)">
            <summary>
            Adds a property to the list of dependencies for
            the specified property
            </summary>
            <param name="propertyName">
            The name of the property.
            </param>
            <param name="dependantPropertyName">
            The name of the depandent property.
            </param>
            <param name="isBidirectional">
            If <see langword="true"/> then a 
            reverse dependancy is also established
            from dependantPropertyName to propertyName.
            </param>
            <remarks>
            When rules are checked for propertyName, they will
            also be checked for any dependant properties associated
            with that property. If isBidirectional is 
            <see langword="true"/> then an additional association
            is set up so when rules are checked for
            dependantPropertyName the rules for propertyName
            will also be checked.
            </remarks>
        </member>
        <member name="M:Csla.Validation.ValidationRules.CheckRules(System.String)">
            <summary>
            Invokes all rule methods associated with
            the specified property and any 
            dependant properties.
            </summary>
            <param name="propertyName">The name of the property to validate.</param>
        </member>
        <member name="M:Csla.Validation.ValidationRules.CheckRules">
            <summary>
            Invokes all rule methods for all properties
            in the object.
            </summary>
        </member>
        <member name="M:Csla.Validation.ValidationRules.CheckRules(System.Collections.Generic.List{Csla.Validation.IRuleMethod})">
            <summary>
            Given a list
            containing IRuleMethod objects, this
            method executes all those rule methods.
            </summary>
        </member>
        <member name="M:Csla.Validation.ValidationRules.GetBrokenRules">
            <summary>
            Returns a reference to the readonly collection of broken
            business rules.
            </summary>
            <remarks>
            The reference returned points to the actual collection object.
            This means that as rules are marked broken or unbroken over time,
            the underlying data will change. Because of this, the UI developer
            can bind a display directly to this collection to get a dynamic
            display of the broken rules at all times.
            </remarks>
            <returns>A reference to the collection of broken rules.</returns>
        </member>
        <member name="P:Csla.Validation.ValidationRules.ProcessThroughPriority">
            <summary>
            Gets or sets the priority through which
            CheckRules should process before short-circuiting
            processing on broken rules.
            </summary>
            <value>Defaults to 0.</value>
            <remarks>
            All rules for each property are processed by CheckRules
            though this priority. Rules with lower priorities are
            only processed if no previous rule has been marked as
            broken.
            </remarks>
        </member>
        <member name="P:Csla.Validation.ValidationRules.IsValid">
            <summary>
            Returns a value indicating whether there are any broken rules
            at this time. 
            </summary>
            <returns>A value indicating whether any rules are broken.</returns>
        </member>
        <member name="T:Csla.Validation.ValidationRulesManager">
            <summary>
            Maintains rule methods for a business object
            or business object type.
            </summary>
        </member>
        <member name="M:Csla.Validation.ValidationRulesManager.AddDependantProperty(System.String,System.String)">
            <summary>
            Adds a property to the list of dependencies for
            the specified property
            </summary>
            <param name="propertyName">
            The name of the property.
            </param>
            <param name="dependantPropertyName">
            The name of the dependant property.
            </param>
            <remarks>
            When rules are checked for propertyName, they will
            also be checked for any dependant properties associated
            with that property.
            </remarks>
        </member>
        <member name="T:Csla.WebServiceHost.WebServicePortal">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.#ctor">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.Create(System.Byte[])">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.CreateAsync(System.Byte[])">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.CreateAsync(System.Byte[],System.Object)">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.Fetch(System.Byte[])">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.FetchAsync(System.Byte[])">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.FetchAsync(System.Byte[],System.Object)">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.Update(System.Byte[])">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.UpdateAsync(System.Byte[])">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.UpdateAsync(System.Byte[],System.Object)">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.Delete(System.Byte[])">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.DeleteAsync(System.Byte[])">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.DeleteAsync(System.Byte[],System.Object)">
            <remarks/>
        </member>
        <member name="M:Csla.WebServiceHost.WebServicePortal.CancelAsync(System.Object)">
            <remarks/>
        </member>
        <member name="E:Csla.WebServiceHost.WebServicePortal.CreateCompleted">
            <remarks/>
        </member>
        <member name="E:Csla.WebServiceHost.WebServicePortal.FetchCompleted">
            <remarks/>
        </member>
        <member name="E:Csla.WebServiceHost.WebServicePortal.UpdateCompleted">
            <remarks/>
        </member>
        <member name="E:Csla.WebServiceHost.WebServicePortal.DeleteCompleted">
            <remarks/>
        </member>
        <member name="T:Csla.WebServiceHost.CreateCompletedEventHandler">
            <remarks/>
        </member>
        <member name="T:Csla.WebServiceHost.CreateCompletedEventArgs">
            <remarks/>
        </member>
        <member name="P:Csla.WebServiceHost.CreateCompletedEventArgs.Result">
            <remarks/>
        </member>
        <member name="T:Csla.WebServiceHost.FetchCompletedEventHandler">
            <remarks/>
        </member>
        <member name="T:Csla.WebServiceHost.FetchCompletedEventArgs">
            <remarks/>
        </member>
        <member name="P:Csla.WebServiceHost.FetchCompletedEventArgs.Result">
            <remarks/>
        </member>
        <member name="T:Csla.WebServiceHost.UpdateCompletedEventHandler">
            <remarks/>
        </member>
        <member name="T:Csla.WebServiceHost.UpdateCompletedEventArgs">
            <remarks/>
        </member>
        <member name="P:Csla.WebServiceHost.UpdateCompletedEventArgs.Result">
            <remarks/>
        </member>
        <member name="T:Csla.WebServiceHost.DeleteCompletedEventHandler">
            <remarks/>
        </member>
        <member name="T:Csla.WebServiceHost.DeleteCompletedEventArgs">
            <remarks/>
        </member>
        <member name="P:Csla.WebServiceHost.DeleteCompletedEventArgs.Result">
            <remarks/>
        </member>
        <member name="T:Csla.Web.CslaDataSource">
            <summary>
            A Web Forms data binding control designed to support
            CSLA .NET business objects as data sources.
            </summary>
        </member>
        <member name="M:Csla.Web.CslaDataSource.GetView(System.String)">
            <summary>
            Returns the default view for this data control.
            </summary>
            <param name="viewName">Ignored.</param>
            <returns></returns>
            <remarks>This control only contains a "Default" view.</remarks>
        </member>
        <member name="M:Csla.Web.CslaDataSource.GetType(System.String,System.String)">
            <summary>
            Returns a <see cref="T:System.Type">Type</see> object based on the
            assembly and type information provided.
            </summary>
            <param name="typeAssemblyName">Optional assembly name.</param>
            <param name="typeName">Full type name of the class,
            including assembly name.</param>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Web.CslaDataSource.GetViewNames">
            <summary>
            Returns a list of views available for this control.
            </summary>
            <remarks>This control only provides the "Default" view.</remarks>
        </member>
        <member name="M:Csla.Web.CslaDataSource.OnSelectObject(Csla.Web.SelectObjectArgs)">
            <summary>
            Raises the SelectObject event.
            </summary>
        </member>
        <member name="M:Csla.Web.CslaDataSource.OnInsertObject(Csla.Web.InsertObjectArgs)">
            <summary>
            Raises the InsertObject event.
            </summary>
        </member>
        <member name="M:Csla.Web.CslaDataSource.OnUpdateObject(Csla.Web.UpdateObjectArgs)">
            <summary>
            Raises the UpdateObject event.
            </summary>
        </member>
        <member name="M:Csla.Web.CslaDataSource.OnDeleteObject(Csla.Web.DeleteObjectArgs)">
            <summary>
            Raises the DeleteObject event.
            </summary>
        </member>
        <member name="E:Csla.Web.CslaDataSource.SelectObject">
            <summary>
            Event raised when an object is to be created and
            populated with data.
            </summary>
            <remarks>Handle this event in a page and set
            e.BusinessObject to the populated business object.
            </remarks>
        </member>
        <member name="E:Csla.Web.CslaDataSource.InsertObject">
            <summary>
            Event raised when an object is to be populated with data
            and inserted.
            </summary>
            <remarks>Handle this event in a page to create an
            instance of the object, load the object with data and
            insert the object into the database.</remarks>
        </member>
        <member name="E:Csla.Web.CslaDataSource.UpdateObject">
            <summary>
            Event raised when an object is to be updated.
            </summary>
            <remarks>Handle this event in a page to update an
            existing instance of an object with new data and then
            save the object into the database.</remarks>
        </member>
        <member name="E:Csla.Web.CslaDataSource.DeleteObject">
            <summary>
            Event raised when an object is to be deleted.
            </summary>
            <remarks>Handle this event in a page to delete
            an object from the database.</remarks>
        </member>
        <member name="P:Csla.Web.CslaDataSource.TypeAssemblyName">
            <summary>
            Get or set the name of the assembly (no longer used).
            </summary>
            <value>Obsolete - do not use.</value>
        </member>
        <member name="P:Csla.Web.CslaDataSource.TypeName">
            <summary>
            Get or set the full type name of the business object
            class to be used as a data source.
            </summary>
            <value>Full type name of the business class,
            including assembly name.</value>
        </member>
        <member name="P:Csla.Web.CslaDataSource.TypeSupportsPaging">
            <summary>
            Get or set a value indicating whether the
            business object data source supports paging.
            </summary>
            <remarks>
            To support paging, the business object
            (collection) must implement 
            <see cref="T:Csla.Core.IReportTotalRowCount"/>.
            </remarks>
        </member>
        <member name="P:Csla.Web.CslaDataSource.TypeSupportsSorting">
            <summary>
            Get or set a value indicating whether the
            business object data source supports sorting.
            </summary>
        </member>
        <member name="T:Csla.Web.CslaDataSourceView">
            <summary>
            The object responsible for managing data binding
            to a specific CSLA .NET object.
            </summary>
        </member>
        <member name="M:Csla.Web.CslaDataSourceView.#ctor(Csla.Web.CslaDataSource,System.String)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="owner">The CslaDataSource object
            that owns this view.</param>
            <param name="viewName">The name of the view.</param>
        </member>
        <member name="M:Csla.Web.CslaDataSourceView.ExecuteSelect(System.Web.UI.DataSourceSelectArguments)">
            <summary>
            Implements the select behavior for
            the control by raising the 
            <see cref="E:Csla.Web.CslaDataSource.SelectObject"/> event.
            </summary>
            <param name="arguments">Arguments object.</param>
            <returns>The data returned from the select.</returns>
        </member>
        <member name="M:Csla.Web.CslaDataSourceView.ExecuteInsert(System.Collections.IDictionary)">
            <summary>
            Implements the insert behavior for
            the control by raising the 
            <see cref="E:Csla.Web.CslaDataSource.InsertObject"/> event.
            </summary>
            <param name="values">The values from
            the UI that are to be inserted.</param>
            <returns>The number of rows affected.</returns>
        </member>
        <member name="M:Csla.Web.CslaDataSourceView.ExecuteDelete(System.Collections.IDictionary,System.Collections.IDictionary)">
            <summary>
            Implements the delete behavior for
            the control by raising the 
            <see cref="E:Csla.Web.CslaDataSource.DeleteObject"/> event.
            </summary>
            <param name="keys">The key values from
            the UI that are to be deleted.</param>
            <param name="oldValues">The old values
            from the UI.</param>
            <returns>The number of rows affected.</returns>
        </member>
        <member name="M:Csla.Web.CslaDataSourceView.ExecuteUpdate(System.Collections.IDictionary,System.Collections.IDictionary,System.Collections.IDictionary)">
            <summary>
            Implements the update behavior for
            the control by raising the 
            <see cref="E:Csla.Web.CslaDataSource.UpdateObject"/> event.
            </summary>
            <param name="keys">The key values from the UI
            that identify the object to be updated.</param>
            <param name="values">The values from
            the UI that are to be inserted.</param>
            <param name="oldValues">The old values
            from the UI.</param>
            <returns>The number of rows affected.</returns>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.TypeAssemblyName">
            <summary>
            Get or set the name of the assembly (no longer used).
            </summary>
            <value>Obsolete - do not use.</value>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.TypeName">
            <summary>
            Get or set the full type name of the business object
            class to be used as a data source.
            </summary>
            <value>Full type name of the business class.</value>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.TypeSupportsPaging">
            <summary>
            Get or set a value indicating whether the
            business object data source supports paging.
            </summary>
            <remarks>
            To support paging, the business object
            (collection) must implement 
            <see cref="T:Csla.Core.IReportTotalRowCount"/>.
            </remarks>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.TypeSupportsSorting">
            <summary>
            Get or set a value indicating whether the
            business object data source supports sorting.
            </summary>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.CanInsert">
            <summary>
            Gets a value indicating whether the data source can
            insert data.
            </summary>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.CanDelete">
            <summary>
            Gets a value indicating whether the data source can
            delete data.
            </summary>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.CanUpdate">
            <summary>
            Gets a value indicating whether the data source can
            update data.
            </summary>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.CanPage">
            <summary>
            Gets a value indicating whether the data source supports
            paging of the data.
            </summary>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.CanRetrieveTotalRowCount">
            <summary>
            Gets a value indicating whether the data source can
            retrieve the total number of rows of data. Always
            returns <see langword="true"/>.
            </summary>
        </member>
        <member name="P:Csla.Web.CslaDataSourceView.CanSort">
            <summary>
            Gets a alue indicating whether the data source supports
            sorting of the data. Always returns <see langword="false"/>.
            </summary>
        </member>
        <member name="T:Csla.Web.DeleteObjectArgs">
            <summary>
            Argument object used in the DeleteObject event.
            </summary>
        </member>
        <member name="M:Csla.Web.DeleteObjectArgs.#ctor(System.Collections.IDictionary,System.Collections.IDictionary)">
            <summary>
            Create an instance of the object.
            </summary>
        </member>
        <member name="P:Csla.Web.DeleteObjectArgs.RowsAffected">
            <summary>
            Gets or sets the number of rows affected
            while handling this event.
            </summary>
            <value></value>
            <returns></returns>
            <remarks>
            The code handling the event should set this
            value to indicate the number of rows affected
            by the operation.
            </remarks>
        </member>
        <member name="P:Csla.Web.DeleteObjectArgs.Keys">
            <summary>
            The list of key values entered by the user.
            </summary>
            <remarks>It is up to the event handler in the
            web page to use the values to identify the 
            object to be deleted.</remarks>
        </member>
        <member name="P:Csla.Web.DeleteObjectArgs.OldValues">
            <summary>
            The list of old data values maintained by
            data binding.
            </summary>
            <remarks>It is up to the event handler in the
            web page to use the values to identify the 
            object to be deleted.</remarks>
        </member>
        <member name="T:Csla.Web.Design.CslaDataSourceConfiguration">
            <summary>
            CslaDataSource configuration form.
            </summary>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceConfiguration.#ctor">
            <summary>
            Create instance of object.
            </summary>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceConfiguration.#ctor(System.Web.UI.DataSourceControl,System.String)">
            <summary>
            Create instance of object.
            </summary>
            <param name="control">Reference to the data source control.</param>
            <param name="oldTypeName">Existing type name.</param>
        </member>
        <member name="F:Csla.Web.Design.CslaDataSourceConfiguration.components">
            <summary>
            Required designer variable.
            </summary>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceConfiguration.Dispose(System.Boolean)">
            <summary>
            Clean up any resources being used.
            </summary>
            <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceConfiguration.InitializeComponent">
            <summary>
            Required method for Designer support - do not modify
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.CslaDataSourceConfiguration.TypeName">
            <summary>
            Gets the type name entered by the user.
            </summary>
        </member>
        <member name="T:Csla.Web.Design.CslaDataSourceDesigner">
            <summary>
            Implements designer support for CslaDataSource.
            </summary>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceDesigner.Initialize(System.ComponentModel.IComponent)">
            <summary>
            Initialize the designer component.
            </summary>
            <param name="component">The CslaDataSource control to 
            be designed.</param>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceDesigner.GetView(System.String)">
            <summary>
            Returns the default view for this designer.
            </summary>
            <param name="viewName">Ignored</param>
            <returns></returns>
            <remarks>
            This designer supports only a "Default" view.
            </remarks>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceDesigner.GetViewNames">
            <summary>
            Return a list of available views.
            </summary>
            <remarks>
            This designer supports only a "Default" view.
            </remarks>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceDesigner.RefreshSchema(System.Boolean)">
            <summary>
            Refreshes the schema for the data.
            </summary>
            <param name="preferSilent"></param>
            <remarks></remarks>
        </member>
        <member name="M:Csla.Web.Design.CslaDataSourceDesigner.Configure">
            <summary>
            Invoke the design time configuration
            support provided by the control.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.CslaDataSourceDesigner.CanRefreshSchema">
            <summary>
            Get a value indicating whether the control can
            refresh its schema.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.CslaDataSourceDesigner.CanConfigure">
            <summary>
            Get a value indicating whether this control
            supports design time configuration.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.CslaDataSourceDesigner.AllowResize">
            <summary>
            Get a value indicating whether the control can
            be resized.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.CslaDataSourceDesigner.DataSourceControl">
            <summary>
            Get a reference to the CslaDataSource control being
            designed.
            </summary>
        </member>
        <member name="T:Csla.Web.Design.CslaDesignerDataSourceView">
            <summary>
            Object responsible for providing details about
            data binding to a specific CSLA .NET object.
            </summary>
        </member>
        <member name="M:Csla.Web.Design.CslaDesignerDataSourceView.#ctor(Csla.Web.Design.CslaDataSourceDesigner,System.String)">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="M:Csla.Web.Design.CslaDesignerDataSourceView.GetDesignTimeData(System.Int32,System.Boolean@)">
            <summary>
            Returns a set of sample data used to populate
            controls at design time.
            </summary>
            <param name="minimumRows">Minimum number of sample rows
            to create.</param>
            <param name="isSampleData">Returns True if the data
            is sample data.</param>
        </member>
        <member name="P:Csla.Web.Design.CslaDesignerDataSourceView.Schema">
            <summary>
            Returns schema information corresponding to the properties
            of the CSLA .NET business object.
            </summary>
            <remarks>
            All public properties are returned except for those marked
            with the <see cref="T:System.ComponentModel.BrowsableAttribute">Browsable attribute</see>
            as False.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.CslaDesignerDataSourceView.CanRetrieveTotalRowCount">
            <summary>
            Get a value indicating whether data binding can retrieve
            the total number of rows of data.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.CslaDesignerDataSourceView.CanDelete">
            <summary>
            Get a value indicating whether data binding can directly
            delete the object.
            </summary>
            <remarks>
            If this returns true, the web page must handle the
            <see cref="E:Csla.Web.CslaDataSource.DeleteObject">DeleteObject</see>
            event.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.CslaDesignerDataSourceView.CanInsert">
            <summary>
            Get a value indicating whether data binding can directly
            insert an instance of the object.
            </summary>
            <remarks>
            If this returns true, the web page must handle the
            <see cref="E:Csla.Web.CslaDataSource.InsertObject">InsertObject</see>
            event.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.CslaDesignerDataSourceView.CanUpdate">
            <summary>
            Get a value indicating whether data binding can directly
            update or edit the object.
            </summary>
            <remarks>
            If this returns true, the web page must handle the
            <see cref="E:Csla.Web.CslaDataSource.UpdateObject">UpdateObject</see>
            event.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.CslaDesignerDataSourceView.CanPage">
            <summary>
            Gets a value indicating whether the data source supports
            paging.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.CslaDesignerDataSourceView.CanSort">
            <summary>
            Gets a value indicating whether the data source supports
            sorting.
            </summary>
        </member>
        <member name="T:Csla.Web.Design.ObjectFieldInfo">
            <summary>
            Contains schema information for a single
            object property.
            </summary>
        </member>
        <member name="M:Csla.Web.Design.ObjectFieldInfo.#ctor(System.ComponentModel.PropertyDescriptor)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="field">The PropertyInfo object
            describing the property.</param>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.DataType">
            <summary>
            Gets the data type of the property.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.Identity">
            <summary>
            Gets a value indicating whether this property
            is an identity key for the object.
            </summary>
            <remarks>
            Returns the optional value provided through
            the <see cref="T:System.ComponentModel.DataObjectFieldAttribute">DataObjectField</see>
            attribute on the property.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.IsReadOnly">
            <summary>
            Gets a value indicating whether this property
            is readonly.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.IsUnique">
            <summary>
            Gets a value indicating whether this property
            must contain a unique value.
            </summary>
            <returns>
            Always returns True if the property
            is marked as a primary key, otherwise
            returns False.
            </returns>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.Length">
            <summary>
            Gets the length of the property value.
            </summary>
            <remarks>
            Returns the optional value provided through
            the <see cref="T:System.ComponentModel.DataObjectFieldAttribute">DataObjectField</see>
            attribute on the property.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.Name">
            <summary>
            Gets the property name.
            </summary>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.Nullable">
            <summary>
            Gets a value indicating whether the property
            is nullable
            </summary>
            <remarks>
            Returns True for reference types, and for
            value types wrapped in the Nullable generic.
            The result can also be set to True through
            the <see cref="T:System.ComponentModel.DataObjectFieldAttribute">DataObjectField</see>
            attribute on the property.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.Precision">
            <summary>
            Gets the property's numeric precision.
            </summary>
            <returns>Always returns -1.</returns>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.PrimaryKey">
            <summary>
            Gets a value indicating whether the property
            is a primary key value.
            </summary>
            <remarks>
            Returns the optional value provided through
            the <see cref="T:System.ComponentModel.DataObjectFieldAttribute">DataObjectField</see>
            attribute on the property.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.ObjectFieldInfo.Scale">
            <summary>
            Gets the property's scale.
            </summary>
            <returns>Always returns -1.</returns>
        </member>
        <member name="T:Csla.Web.Design.ObjectSchema">
            <summary>
            Object providing access to schema information for
            a business object.
            </summary>
            <remarks>
            This object returns only one view, which corresponds
            to the business object used by data binding.
            </remarks>
        </member>
        <member name="M:Csla.Web.Design.ObjectSchema.#ctor(Csla.Web.Design.CslaDataSourceDesigner,System.String)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="designer">Data source designer object.</param>
            <param name="typeName">Type name for
            which the schema should be generated.</param>
        </member>
        <member name="M:Csla.Web.Design.ObjectSchema.GetViews">
            <summary>
            Returns a single element array containing the
            schema for the CSLA .NET business object.
            </summary>
        </member>
        <member name="T:Csla.Web.Design.ObjectViewSchema">
            <summary>
            Object providing schema information for a
            business object.
            </summary>
        </member>
        <member name="M:Csla.Web.Design.ObjectViewSchema.#ctor(Csla.Web.Design.CslaDataSourceDesigner,System.String)">
            <summary>
            Create an instance of the object.
            </summary>
            <param name="site">Site containing the control.</param>
            <param name="typeName">The business class for
            which to generate the schema.</param>
        </member>
        <member name="M:Csla.Web.Design.ObjectViewSchema.GetChildren">
            <summary>
            Returns a list of child schemas belonging to the
            object.
            </summary>
            <remarks>This schema object only returns
            schema for the object itself, so GetChildren will
            always return Nothing (null in C#).</remarks>
        </member>
        <member name="M:Csla.Web.Design.ObjectViewSchema.GetFields">
            <summary>
            Returns schema information for each property on
            the object.
            </summary>
            <remarks>All public properties on the object
            will be reflected in this schema list except
            for those properties where the 
            <see cref="T:System.ComponentModel.BrowsableAttribute">Browsable</see> attribute
            is False.
            </remarks>
        </member>
        <member name="P:Csla.Web.Design.ObjectViewSchema.Name">
            <summary>
            Returns the name of the schema.
            </summary>
        </member>
        <member name="T:Csla.Web.InsertObjectArgs">
            <summary>
            Argument object used in the InsertObject event.
            </summary>
        </member>
        <member name="M:Csla.Web.InsertObjectArgs.#ctor(System.Collections.IDictionary)">
            <summary>
            Create an instance of the object.
            </summary>
        </member>
        <member name="P:Csla.Web.InsertObjectArgs.RowsAffected">
            <summary>
            Gets or sets the number of rows affected
            while handling this event.
            </summary>
            <value></value>
            <returns></returns>
            <remarks>
            The code handling the event should set this
            value to indicate the number of rows affected
            by the operation.
            </remarks>
        </member>
        <member name="P:Csla.Web.InsertObjectArgs.Values">
            <summary>
            The list of data values entered by the user.
            </summary>
            <remarks>It is up to the event handler in the
            web page to take the list of values, put them
            into a business object and to save that object
            into the database.</remarks>
        </member>
        <member name="T:Csla.Web.SelectObjectArgs">
            <summary>
            Argument object used in the SelectObject event.
            </summary>
        </member>
        <member name="M:Csla.Web.SelectObjectArgs.#ctor(System.Web.UI.DataSourceSelectArguments)">
            <summary>
            Creates an instance of the object, initializing
            it with values from data binding.
            </summary>
            <param name="args">Values provided from data binding.</param>
        </member>
        <member name="P:Csla.Web.SelectObjectArgs.BusinessObject">
            <summary>
            Get or set a reference to the business object
            that is created and populated by the SelectObject
            event handler in the web page.
            </summary>
            <value>A reference to a CSLA .NET business object.</value>
        </member>
        <member name="P:Csla.Web.SelectObjectArgs.SortExpression">
            <summary>
            Gets the sort expression that should be used to
            sort the data being returned to the data source
            control.
            </summary>
        </member>
        <member name="P:Csla.Web.SelectObjectArgs.SortProperty">
            <summary>
            Gets the property name for the sort if only one
            property/column name is specified.
            </summary>
            <remarks>
            If multiple properties/columns are specified
            for the sort, you must parse the value from
            <see cref="P:Csla.Web.SelectObjectArgs.SortExpression"/> to find all the
            property names and sort directions for the sort.
            </remarks>
        </member>
        <member name="P:Csla.Web.SelectObjectArgs.SortDirection">
            <summary>
            Gets the sort direction for the sort if only
            one property/column name is specified.
            </summary>
            <remarks>
            If multiple properties/columns are specified
            for the sort, you must parse the value from
            <see cref="P:Csla.Web.SelectObjectArgs.SortExpression"/> to find all the
            property names and sort directions for the sort.
            </remarks>
        </member>
        <member name="P:Csla.Web.SelectObjectArgs.StartRowIndex">
            <summary>
            Gets the index for the first row that will be
            displayed. This should be the first row in
            the resulting collection set into the
            <see cref="P:Csla.Web.SelectObjectArgs.BusinessObject"/> property.
            </summary>
        </member>
        <member name="P:Csla.Web.SelectObjectArgs.MaximumRows">
            <summary>
            Gets the maximum number of rows that
            should be returned as a result of this
            query. For paged collections, this is the
            page size.
            </summary>
        </member>
        <member name="P:Csla.Web.SelectObjectArgs.RetrieveTotalRowCount">
            <summary>
            Gets a value indicating whether the
            query should return the total row count
            through the
            <see cref="T:Csla.Core.IReportTotalRowCount"/>
            interface.
            </summary>
        </member>
        <member name="T:Csla.Web.UpdateObjectArgs">
            <summary>
            Argument object used in the UpdateObject event.
            </summary>
        </member>
        <member name="M:Csla.Web.UpdateObjectArgs.#ctor(System.Collections.IDictionary,System.Collections.IDictionary,System.Collections.IDictionary)">
            <summary>
            Creates an instance of the object.
            </summary>
        </member>
        <member name="P:Csla.Web.UpdateObjectArgs.RowsAffected">
            <summary>
            Gets or sets the number of rows affected
            while handling this event.
            </summary>
            <value></value>
            <returns></returns>
            <remarks>
            The code handling the event should set this
            value to indicate the number of rows affected
            by the operation.
            </remarks>
        </member>
        <member name="P:Csla.Web.UpdateObjectArgs.Keys">
            <summary>
            The list of key values entered by the user.
            </summary>
            <remarks>It is up to the event handler in the
            web page to take the list of values, put them
            into a business object and to save that object
            into the database.</remarks>
        </member>
        <member name="P:Csla.Web.UpdateObjectArgs.Values">
            <summary>
            The list of data values entered by the user.
            </summary>
            <remarks>It is up to the event handler in the
            web page to take the list of values, put them
            into a business object and to save that object
            into the database.</remarks>
        </member>
        <member name="P:Csla.Web.UpdateObjectArgs.OldValues">
            <summary>
            The list of old data values maintained by
            data binding.
            </summary>
            <remarks>It is up to the event handler in the
            web page to take the list of values, put them
            into a business object and to save that object
            into the database.</remarks>
        </member>
        <member name="T:Csla.Windows.BindingSourceRefresh">
            <summary>
            Windows Forms extender control that resolves the
            data refresh issue with data bound detail controls
            as discussed in Chapter 5.
            </summary>
        </member>
        <member name="M:Csla.Windows.BindingSourceRefresh.#ctor(System.ComponentModel.IContainer)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="container">Container of the control.</param>
        </member>
        <member name="M:Csla.Windows.BindingSourceRefresh.CanExtend(System.Object)">
            <summary>
            Gets a value indicating whether the extender control
            can extend the specified control.
            </summary>
            <param name="extendee">The control to be extended.</param>
            <remarks>
            This control only extends <see cref="T:System.Windows.Forms.BindingSource"/> controls.
            </remarks>
        </member>
        <member name="M:Csla.Windows.BindingSourceRefresh.GetReadValuesOnChange(System.Windows.Forms.BindingSource)">
            <summary>
            Gets the value of the custom ReadValuesOnChange extender
            property added to extended controls.
            </summary>
            <param name="source">Control being extended.</param>
        </member>
        <member name="M:Csla.Windows.BindingSourceRefresh.SetReadValuesOnChange(System.Windows.Forms.BindingSource,System.Boolean)">
            <summary>
            Sets the value of the custom ReadValuesOnChange extender
            property added to extended controls.
            </summary>
            <param name="source">Control being extended.</param>
            <param name="value">New value of property.</param>
            <remarks></remarks>
        </member>
        <member name="T:Csla.Windows.ReadWriteAuthorization">
            <summary>
            Windows Forms extender control that automatically
            enables and disables detail form controls based
            on the authorization settings from a CSLA .NET 
            business object.
            </summary>
        </member>
        <member name="M:Csla.Windows.ReadWriteAuthorization.#ctor(System.ComponentModel.IContainer)">
            <summary>
            Creates an instance of the object.
            </summary>
            <param name="container">The container of the control.</param>
        </member>
        <member name="M:Csla.Windows.ReadWriteAuthorization.CanExtend(System.Object)">
            <summary>
            Gets a value indicating whether the extender control
            can extend the specified control.
            </summary>
            <param name="extendee">The control to be extended.</param>
            <remarks>
            Any control implementing either a ReadOnly property or
            Enabled property can be extended.
            </remarks>
        </member>
        <member name="M:Csla.Windows.ReadWriteAuthorization.GetApplyAuthorization(System.Windows.Forms.Control)">
            <summary>
            Gets the custom ApplyAuthorization extender
            property added to extended controls.
            </summary>
            <param name="source">Control being extended.</param>
        </member>
        <member name="M:Csla.Windows.ReadWriteAuthorization.SetApplyAuthorization(System.Windows.Forms.Control,System.Boolean)">
            <summary>
            Sets the custom ApplyAuthorization extender
            property added to extended controls.
            </summary>
            <param name="source">Control being extended.</param>
            <param name="value">New value of property.</param>
        </member>
        <member name="M:Csla.Windows.ReadWriteAuthorization.ResetControlAuthorization">
            <summary>
            Causes the ReadWriteAuthorization control
            to apply authorization rules from the business
            object to all extended controls on the form.
            </summary>
            <remarks>
            Call this method to refresh the display of detail
            controls on the form any time the authorization
            rules may have changed. Examples include: after
            a user logs in or out, and after an object has
            been updated, inserted, deleted or retrieved
            from the database.
            </remarks>
        </member>
    </members>
</doc>
