Share a Rich Text Editor Document
- 2 minutes to read
ASPxRichEdit allows multiple users to access the same instance of a document at the same time. These situations may occur in the following cases:
- Multiple users open a document from a common shared document folder on the server file system.
- Multiple users open a document from the open document storage with the same DocumentId.
The collaboration feature is convenient for working with a document on multiple devices. For instance, a user can start to work with a document on a desktop and continue on a mobile device. However, we do not recommend that you use ASPxRichEdit in multi-user edit mode because users are able to overwrite each other’s changes.
The control maintains the full version of the current document model in the user’s browser and in the server memory. After a user changes the document, the changes are sent to the server. If the client and server models have the same version, changes are applied to the server model. Versions of both models are changed to a new value. All client versions of this document, which were loaded by other users earlier, become outdated. If another user changes an outdated version of the document, the changes won’t be applied to the server model. After an attempt to synchronize the model, ASPxRichEdit shows an error message. The last version of the document from the server is loaded to the client and all user changes are lost.
Limitations
- Users do not receive notifications about changes made by other users. You need to update the page to see the changes.
- The editor maintains the document’s history of changes on the client side. The history is cleared after the document is reloaded.
- When you explicitly close a document, every user who works with this document receives the “Your session has expired” error on an attempt to refresh the document.
Prevent Document Sharing
Use one of the following techniques to prevent document sharing:
- If documents are opened from the server’s file system, place user documents into different work folders (specified by the WorkDirectory property) for different users.
- If users open the same document from a custom document storage, open a unique copy of the document (specify a unique DocumentId) for each user.
- Open a document as a template.