Click or drag to resize

ServerClientSession Class

Use this session class when Page level locking is required and/or not all Databases are local and not reachable by UNC paths.
Inheritance Hierarchy

Namespace:  VelocityDb.Session
Assembly:  VelocityDb (in VelocityDb.dll) Version: (11.1)
public class ServerClientSession : SessionBase

The ServerClientSession type exposes the following members.

Public methodAbort
Aborts a transaction, it undoes all persistent changes made within the transaction
(Overrides SessionBaseAbort.)
Public methodBeginRead
Transaction control, begin a read only transaction
(Overrides SessionBaseBeginRead(Boolean).)
Public methodBeginReadWithEvents
Start a read only transaction and gets a list of created/updated objects as subscribed to by this session
Public methodBeginUpdate
Transaction control, begin an update transaction.
(Overrides SessionBaseBeginUpdate(Boolean).)
Public methodBeginUpdateWithEvents
Starts a transaction that may be creating new persistent data and/or updating persistent data and gets a list of created/updated objects as subscribed to by this session
Public methodClearServerCache
Used as an aid when debugging server data, internal use, avoid using for now.
Public methodCompact
Reduce size of databases, if possible, by first attempting to relocate pages to free areas towards the beginning of each Database file and then by truncating files where unused space begins. Run Compact() outside the scope of any transaction.
(Overrides SessionBaseCompact.)
Public methodCompact(Database)
Reduce size of database, if possible, by truncating file where unused space begins
(Overrides SessionBaseCompact(Database).)
Public methodCopyAllDatabasesTo
Copies all databases to a selected directory on the local host.
(Overrides SessionBaseCopyAllDatabasesTo(String, Boolean).)
Public methodDeleteLocation
Deletes a DatabaseLocation, location must first mot have any Databases in it
(Overrides SessionBaseDeleteLocation(DatabaseLocation, Boolean).)
Public methodFlushUpdates
Send all updated pages to the server(s) managing those pages, freeing up memory in client.
(Overrides SessionBaseFlushUpdates.)
Public methodFlushUpdatesServers
Make servers Write all updated data. This may free up some memory on the servers. Only effects sessions using VelocityDbServer(s)
(Overrides SessionBaseFlushUpdatesServers.)
Public methodInUseNumberOfPages
Gets the number of pages currently in use by a Database
(Overrides SessionBaseInUseNumberOfPages(Database).)
Public methodNewDatabase
Create a new Database with a given database number
(Overrides SessionBaseNewDatabase(UInt32, UInt32, String, Boolean).)
Public methodNewLocation
Creates a new DatabaseLocation or updates existing ones
(Overrides SessionBaseNewLocation(DatabaseLocation).)
Public methodOpenAllDatabases
Open all databases
(Overrides SessionBaseOpenAllDatabases(Boolean).)
Public methodOpenDatabase
Opens a Database
(Overrides SessionBaseOpenDatabase(UInt32, Boolean, Boolean).)
Public methodOpenLocationDatabases
Opens all the databases in a given location
(Overrides SessionBaseOpenLocationDatabases(DatabaseLocation, Boolean).)
Public methodRestoreFrom
Restores Databases and pages from a backup DatabaseLocation. Existing data will be merged with the restored data unless existing Databases to restore are deleted before the restore.
(Overrides SessionBaseRestoreFrom(DatabaseLocation, DateTime).)
Public methodSubscribeToChanges
Subscribe to committed database changes of instances of a type when an optional property evaluates to true.
(Overrides SessionBaseSubscribeToChanges(Type, String).)
Public methodUnsubscribeToChanges
Unsubscribe to committed database changes of instances of a type when an optional property evaluates to true.
(Overrides SessionBaseUnsubscribeToChanges(Type, String).)
Public methodUpdateDatabase
Request an update lock on a database
(Overrides SessionBaseUpdateDatabase(Database).)
Extension Methods
Public Extension MethodExportToCSV
Export all persistent objects to .csv files, one file for each Type and version of Type. This is preview release, format may change. ImportFromCSV can be used to recreate your data. Note that Microsoft Excel can't handle many of these CSV files due to a field value limitation (at about 33000 chars) Notepad++ is one application that can read these files. Some fields like array data are encoded
(Defined by ImportExportCsv.)
Public Extension MethodExportToJsonT(UInt64)Overloaded. (Defined by JsonImportExport.)
Public Extension MethodExportToJsonT(Oid)Overloaded. (Defined by JsonImportExport.)
Public Extension MethodExportToJsonT(Boolean, Boolean)Overloaded. (Defined by JsonImportExport.)
Public Extension MethodImportFromCSV
Restores database files, pages and objects from a .csv file data created with ExportToCSV
(Defined by ImportExportCsv.)
Public Extension MethodImportJsonT (Defined by JsonImportExport.)
Public Extension MethodMicrosoftSync (Defined by Sync.)
Public Extension MethodSyncWith(SessionBase)Overloaded. (Defined by Sync.)
Public Extension MethodSyncWith(SessionBase, FuncSessionBase, UInt64, Change, Boolean)Overloaded. (Defined by Sync.)
See Also