Click here to Skip to main content
Click here to Skip to main content
Articles » Database » NoSQL » General » Downloads
 
Add your own
alternative version

RavenDB - An Introduction

, , 28 Apr 2010
An introduction to RavenDB - a new open source .NET document database using .NET 4.0 and VS 2010
Raven_DB.zip
RavenDB
.gitignore
ayende-open-source.snk
build
default.ps1
psake.ps1
psake_ext.ps1
Raven.Client.Tests
Document
Properties
Shard
Transactions
Raven.Client
Client
Document
Properties
Shard
ShardStrategy
ShardAccess
ShardResolution
ShardSelection
Util
Raven.Database
Data
Defaults
Exceptions
Extensions
Indexing
Json
Linq
PrivateExtensions
Properties
Storage
Tasks
Raven.FileStorage
Properties
Raven.Importer
Properties
Raven.Sample.ShardClient
Properties
Raven.Sample.SimpleClient
Properties
Raven.Scenarios
Properties
Scenarios
AddDocument_AddIndex_QueryIndexForDoc.saz
AfterTooManyErrorsDocumentIndexingForTheIndexWillBeDisabled.saz
AfterTooManyErrorsIndexWillBeDisabled.saz
BatchAndGetDocuments.saz
BatchQueryById.saz
BrowseIndex.saz
CanGenerateIdentityValues.saz
CanGetMetadataWhenLookingAtAllDocs.saz
CanGetMetadataWhenLookingAtAnIndex.saz
CannotDeleteStaticWithoutAccruateETag.saz
CanPutAndDeleteDocumentWithETag.saz
CanUseCollectionNamesInIndexes.saz
DeleteStatic.saz
DeletingDocumentThatDoesNotExistsAlwaysWorks.saz
DeletingWithBadETagWillFail.saz
IndexingErrorsWillShowUpInTheStats.saz
IndexingFunctionWithMultipleResultsPerSourceDocument.saz
PatchDocument.saz
PutAndGetAttachment.saz
PutAndGetDocument.saz
PutAndGetDocumentWithMetadataViaHeaders.saz
PutAndGetIndex.saz
PuttingDocumentUsingTransaction.saz
QueryMapReduceIndex.saz
QueryUsingIndex.saz
RecordHeadersForStatics.saz
SelectFieldsFromIndex.saz
TryingToUpdateAttachmentWithBadETagWillFail.saz
TryingToUpdateDocumentWithBadETagWillFail.saz
TryingToUpdateDocumentWithNonGuidETagWillFail.saz
UpdateAttachemtnUsingETag.saz
UpdatingDocsWillUpdateMapReduceResult.saz
WhenDeletingDocsWillUpdateMapReduceIndex.saz
WillDeleteDocumentFromIndex.saz
WillSupport304.saz
WillSupport304ForAttachments.saz
Raven.Server
Defaults
default.json
PowerShellProvider
Properties
Responders
WebUI
css
smoothness
images
ui-bg_flat_0_aaaaaa_40x100.png
ui-bg_flat_75_ffffff_40x100.png
ui-bg_glass_55_fbf9ee_1x400.png
ui-bg_glass_65_ffffff_1x400.png
ui-bg_glass_75_dadada_1x400.png
ui-bg_glass_75_e6e6e6_1x400.png
ui-bg_glass_95_fef1ec_1x400.png
ui-bg_highlight-soft_75_cccccc_1x100.png
ui-icons_222222_256x240.png
ui-icons_2e83ff_256x240.png
ui-icons_454545_256x240.png
ui-icons_888888_256x240.png
ui-icons_cd0a0a_256x240.png
favicon.ico
images
ajax-loader.gif
bgR.png
c1_i1.png
c2_i2.png
c2_i3.png
c2_i4.png
c2_i5.png
c2_i6.png
c3_i7.png
footer_bg.png
footerContainerBgR.png
header_bg.png
jsonEditor
doc.gif
docNode.gif
docNodeLast.gif
docNodeLastFirst.gif
folder.gif
folderNode.gif
folderNodeFirst.gif
folderNodeLast.gif
folderNodeLastFirst.gif
folderNodeOpen.gif
folderNodeOpenFirst.gif
folderNodeOpenLast.gif
folderNodeOpenLastFirst.gif
folderOpen.gif
vertLine.gif
logo.png
midBox1.png
midBox2Arrow.png
sideBarArrow.png
sideBarListBoxBottom.png
sideBarListBoxTop.png
submit.png
topNavSep.png
js
jstree
themes
default
dot_for_ie.gif
icons.png
throbber.gif
icons
txt.png
rdb.jsonEditor
JSONTemplates
Raven.Tests
Indexes
Linq
Patching
Properties
Storage
Transactions
Views
Raven.Tryouts
Properties
RavenDB.suo
Release
SharedLibs
Esent.Interop.dll
Esent.Interop.pdb
ICSharpCode.NRefactory.dll
ICSharpCode.SharpZipLib.dll
log4net.dll
Lucene.Net.dll
Lucene.Net.pdb
Newtonsoft.Json.dll
Rhino.Mocks.dll
SgmlReaderDll.dll
SgmlReaderDll.pdb
System.Management.Automation.dll
xunit.dll
xunit.extensions.dll
Tools
ILMerge.exe
xUnit
xunit.console.exe
xunit.dll
xunit.extensions.dll
xunit.gui.exe
xunit.installer.exe
XUnit.NAntTasks.dll
xunit.runner.msbuild.dll
xunit.runner.resharper.dll
xunit.runner.tdnet.dll
xunit.runner.utility.dll
zip.exe
Utilities
Binaries
ILMerge.exe
Newtonsoft.Json.dll
Raven.DefaultDatabase.Creator.exe
Raven.DefaultDatabase.Creator.pdb
Raven.Merger.exe
Raven.Merger.pdb
SgmlReaderDll.dll
SgmlReaderDll.pdb
Raven.DefaultDatabase.Creator
Properties
Raven.Merger
Properties
<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Esent.Interop</name>
    </assembly>
    <members>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_param">
            <summary>
            ESENT system parameters.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.SystemPath">
            <summary>
            This parameter indicates the relative or absolute file system path of the
            folder that will contain the checkpoint file for the instance. The path
            must be terminated with a backslash character, which indicates that the
            target path is a folder. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.TempPath">
            <summary>
            This parameter indicates the relative or absolute file system path of
            the folder or file that will contain the temporary database for the instance.
            If the path is to a folder that will contain the temporary database then it
            must be terminated with a backslash character.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.LogFilePath">
            <summary>
            This parameter indicates the relative or absolute file system path of the
            folder that will contain the transaction logs for the instance. The path must
            be terminated with a backslash character, which indicates that the target path
            is a folder.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.BaseName">
            <summary>
            This parameter sets the three letter prefix used for many of the files used by
            the database engine. For example, the checkpoint file is called EDB.CHK by
            default because EDB is the default base name.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.EventSource">
            <summary>
            This parameter supplies an application specific string that will be added to
            any event log messages that are emitted by the database engine. This allows
            easy correlation of event log messages with the source application. By default
            the host application executable name will be used.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.MaxSessions">
            <summary>
            This parameter reserves the requested number of session resources for use by an
            instance. A session resource directly corresponds to a JET_SESID data type.
            This setting will affect how many sessions can be used at the same time.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.MaxOpenTables">
            <summary>
            This parameter reserves the requested number of B+ Tree resources for use by
            an instance. This setting will affect how many tables can be used at the same time.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.MaxCursors">
            <summary>
            This parameter reserves the requested number of cursor resources for use by an
            instance. A cursor resource directly corresponds to a JET_TABLEID data type.
            This setting will affect how many cursors can be used at the same time. A cursor
            resource cannot be shared by different sessions so this parameter must be set to
            a large enough value so that each session can use as many cursors as are required.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.MaxVerPages">
            <summary>
            This parameter reserves the requested number of version store pages for use by an instance.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.MaxTemporaryTables">
            <summary>
            This parameter reserves the requested number of temporary table resources for use
            by an instance. This setting will affect how many temporary tables can be used at
            the same time. If this system parameter is set to zero then no temporary database
            will be created and any activity that requires use of the temporary database will
            fail. This setting can be useful to avoid the I/O required to create the temporary
            database if it is known that it will not be used.
            </summary>
            <remarks>
            The use of a temporary table also requires a cursor resource.
            </remarks>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.LogFileSize">
            <summary>
            This parameter will configure the size of the transaction log files. Each
            transaction log file is a fixed size. The size is equal to the setting of
            this system parameter in units of 1024 bytes.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.LogBuffers">
            <summary>
            This parameter will configure the amount of memory used to cache log records
            before they are written to the transaction log file. The unit for this
            parameter is the sector size of the volume that holds the transaction log files.
            The sector size is almost always 512 bytes, so it is safe to assume that size
            for the unit. This parameter has an impact on performance. When the database
            engine is under heavy update load, this buffer can become full very rapidly.
            A larger cache size for the transaction log file is critical for good update
            performance under such a high load condition. The default is known to be too small
            for this case.
            Do not set this parameter to a number of buffers that is larger (in bytes) than
            half the size of a transaction log file.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.CircularLog">
            <summary>
            This parameter configures how transaction log files are managed by the database
            engine. When circular logging is off, all transaction log files that are generated
            are retained on disk until they are no longer needed because a full backup of the
            database has been performed. When circular logging is on, only transaction log files
            that are younger than the current checkpoint are retained on disk. The benefit of
            this mode is that backups are not required to retire old transaction log files. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.PageTempDBMin">
            <summary>
            This parameter controls the initial size of the temporary database. The size is in
            database pages. A size of zero indicates that the default size of an ordinary
            database should be used. It is often desirable for small applications to configure
            the temporary database to be as small as possible. Setting this parameter to
            SystemParameters.PageTempDBSmallest will achieve the smallest temporary database possible.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.CacheSizeMax">
            <summary>
            This parameter configures the maximum size of the database page cache. The size
            is in database pages. If this parameter is left to its default value, then the
            maximum size of the cache will be set to the size of physical memory when JetInit
            is called.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.CheckpointDepthMax">
            <summary>
            This parameter controls how aggressively database pages are flushed from the
            database page cache to minimize the amount of time it will take to recover from a
            crash. The parameter is a threshold in bytes for about how many transaction log
            files will need to be replayed after a crash. If circular logging is enabled using
            JET_param.CircularLog then this parameter will also control the approximate amount
            of transaction log files that will be retained on disk.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.Recovery">
            <summary>
            This parameter is the master switch that controls crash recovery for an instance.
            If this parameter is set to "On" then ARIES style recovery will be used to bring all
            databases in the instance to a consistent state in the event of a process or machine
            crash. If this parameter is set to "Off" then all databases in the instance will be
            managed without the benefit of crash recovery. That is to say, that if the instance
            is not shut down cleanly using JetTerm prior to the process exiting or machine shutdown
            then the contents of all databases in that instance will be corrupted.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.CacheSize">
            <summary>
            This parameter can be used to control the size of the database page cache at run time.
            Ordinarily, the cache will automatically tune its size as a function of database and
            machine activity levels. If the application sets this parameter to zero, then the cache
            will tune its own size in this manner. However, if the application sets this parameter
            to a non-zero value then the cache will adjust itself to that target size.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.EnableIndexChecking">
            <summary>
            When this parameter is true, every database is checked at JetAttachDatabase time for
            indexes over Unicode key columns that were built using an older version of the NLS
            library in the operating system. This must be done because the database engine persists
            the sort keys generated by LCMapStringW and the value of these sort keys change from release to release.
            If a primary index is detected to be in this state then JetAttachDatabase will always fail with
            JET_err.PrimaryIndexCorrupted.
            If any secondary indexes are detected to be in this state then there are two possible outcomes.
            If AttachDatabaseGrbit.DeleteCorruptIndexes was passed to JetAttachDatabase then these indexes
            will be deleted and JET_wrnCorruptIndexDeleted will be returned from JetAttachDatabase. These
            indexes will need to be recreated by your application. If AttachDatabaseGrbit.DeleteCorruptIndexes
            was not passed to JetAttachDatabase then the call will fail with JET_errSecondaryIndexCorrupted.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.EventSourceKey">
            <summary>
            This parameter can be used to control which event log the database engine uses for its event log
            messages. By default, all event log messages will go to the Application event log. If the registry
            key name for another event log is configured then the event log messages will go there instead.
            </summary>        
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.NoInformationEvent">
            <summary>
            When this parameter is true, informational event log messages that would ordinarily be generated by
            the database engine will be suppressed.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.CacheSizeMin">
            <summary>
            This parameter configures the minimum size of the database page cache. The size is in database pages.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.DatabasePageSize">
            <summary>
            This parameter configures the page size for the database. The page
            size is the smallest unit of space allocation possible for a database
            file. The database page size is also very important because it sets
            the upper limit on the size of an individual record in the database. 
            </summary>
            <remarks>
            Only one database page size is supported per process at this time.
            This means that if you are in a single process that contains different
            applications that use the database engine then they must all agree on
            a database page size.
            </remarks>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.ErrorToString">
            <summary>
            This parameter can be used to convert a JET_ERR into a string.
            This should only be used with JetGetSystemParameter.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.CreatePathIfNotExist">
            <summary>
            When this parameter is set to true then any folder that is missing in a file system path in use by
            the database engine will be silently created. Otherwise, the operation that uses the missing file system
            path will fail with JET_err.InvalidPath.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_param.MaxInstances">
            <summary>
            This parameter controls the maximum number of instances that can be created in a single process.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_err">
            <summary>
            ESENT error codes.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.Success">
            <summary>
            Successful operation.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RfsFailure">
            <summary>
            Resource Failure Simulator failure
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RfsNotArmed">
            <summary>
            Resource Failure Simulator not initialized
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileClose">
            <summary>
            Could not close file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfThreads">
            <summary>
            Could not start thread
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyIO">
            <summary>
            System busy due to too many IOs
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TaskDropped">
            <summary>
            A requested async task could not be executed
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InternalError">
            <summary>
            Fatal internal error
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseBufferDependenciesCorrupted">
            <summary>
            Buffer dependencies improperly set. Recovery failure
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.PreviousVersion">
            <summary>
            Version already existed. Recovery failure
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.PageBoundary">
            <summary>
            Reached Page Boundary
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.KeyBoundary">
            <summary>
            Reached Key Boundary
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadPageLink">
            <summary>
            Database corrupted
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadBookmark">
            <summary>
            Bookmark has no corresponding address in database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NTSystemCallFailed">
            <summary>
            A call to the operating system failed
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadParentPageLink">
            <summary>
            Database corrupted
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SPAvailExtCacheOutOfSync">
            <summary>
            AvailExt cache doesn't match btree
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SPAvailExtCorrupted">
            <summary>
            AvailExt space tree is corrupt
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SPAvailExtCacheOutOfMemory">
            <summary>
            Out of memory allocating an AvailExt cache node
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SPOwnExtCorrupted">
            <summary>
            OwnExt space tree is corrupt
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DbTimeCorrupted">
            <summary>
            Dbtime on current page is greater than global database dbtime
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.KeyTruncated">
            <summary>
            key truncated on index that disallows key truncation
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.KeyTooBig">
            <summary>
            Key is too large
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidLoggedOperation">
            <summary>
            Logged operation cannot be redone
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogFileCorrupt">
            <summary>
            Log file is corrupt
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NoBackupDirectory">
            <summary>
            No backup directory given
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BackupDirectoryNotEmpty">
            <summary>
            The backup directory is not emtpy
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BackupInProgress">
            <summary>
            Backup is active already
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RestoreInProgress">
            <summary>
            Restore in progress
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MissingPreviousLogFile">
            <summary>
            Missing the log file for check point
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogWriteFail">
            <summary>
            Failure writing to log file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogDisabledDueToRecoveryFailure">
            <summary>
            Try to log something after recovery faild
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotLogDuringRecoveryRedo">
            <summary>
            Try to log something during recovery redo
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogGenerationMismatch">
            <summary>
            Name of logfile does not match internal generation number
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadLogVersion">
            <summary>
            Version of log file is not compatible with Jet version
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidLogSequence">
            <summary>
            Timestamp in next log does not match expected
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LoggingDisabled">
            <summary>
            Log is not active
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogBufferTooSmall">
            <summary>
            Log buffer is too small for recovery
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogSequenceEnd">
            <summary>
            Maximum log file number exceeded
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NoBackup">
            <summary>
            No backup in progress
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidBackupSequence">
            <summary>
            Backup call out of sequence
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BackupNotAllowedYet">
            <summary>
            Cannot do backup now
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DeleteBackupFileFail">
            <summary>
            Could not delete backup file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MakeBackupDirectoryFail">
            <summary>
            Could not make backup temp directory
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidBackup">
            <summary>
            Cannot perform incremental backup when circular logging enabled
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecoveredWithErrors">
            <summary>
            Restored with errors
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MissingLogFile">
            <summary>
            Current log file missing
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogDiskFull">
            <summary>
            Log disk full
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadLogSignature">
            <summary>
            Bad signature for a log file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadDbSignature">
            <summary>
            Bad signature for a db file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadCheckpointSignature">
            <summary>
            Bad signature for a checkpoint file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CheckpointCorrupt">
            <summary>
            Checkpoint file not found or corrupt
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MissingPatchPage">
            <summary>
            Patch file page not found during recovery
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadPatchPage">
            <summary>
            Patch file page is not valid
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RedoAbruptEnded">
            <summary>
            Redo abruptly ended due to sudden failure in reading logs from log file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadSLVSignature">
            <summary>
            Signature in SLV file does not agree with database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.PatchFileMissing">
            <summary>
            Hard restore detected that patch file is missing from backup set
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseLogSetMismatch">
            <summary>
            Database does not belong with the current set of log files
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseStreamingFileMismatch">
            <summary>
            Database and streaming file do not match each other
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogFileSizeMismatch">
            <summary>
            actual log file size does not match JET_paramLogFileSize
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CheckpointFileNotFound">
            <summary>
            Could not locate checkpoint file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RequiredLogFilesMissing">
            <summary>
            The required log files for recovery is missing.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SoftRecoveryOnBackupDatabase">
            <summary>
            Soft recovery is intended on a backup database. Restore should be used instead
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogFileSizeMismatchDatabasesConsistent">
            <summary>
            databases have been recovered, but the log file size used during recovery does not match JET_paramLogFileSize
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogSectorSizeMismatch">
            <summary>
            the log file sector size does not match the current volume's sector size
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogSectorSizeMismatchDatabasesConsistent">
            <summary>
            databases have been recovered, but the log file sector size (used during recovery) does not match the current volume's sector size
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogSequenceEndDatabasesConsistent">
            <summary>
            databases have been recovered, but all possible log generations in the current sequence are used; delete all log files and the checkpoint file and backup the databases before continuing
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.StreamingDataNotLogged">
            <summary>
            Illegal attempt to replay a streaming file operation where the data wasn't logged. Probably caused by an attempt to roll-forward with circular logging enabled
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseDirtyShutdown">
            <summary>
            Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ConsistentTimeMismatch">
            <summary>
            Database last consistent time unmatched
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabasePatchFileMismatch">
            <summary>
            Patch file is not generated from this backup
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.EndingRestoreLogTooLow">
            <summary>
            The starting log number too low for the restore
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.StartingRestoreLogTooHigh">
            <summary>
            The starting log number too high for the restore
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.GivenLogFileHasBadSignature">
            <summary>
            Restore log file has bad signature
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.GivenLogFileIsNotContiguous">
            <summary>
            Restore log file is not contiguous
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MissingRestoreLogFiles">
            <summary>
            Some restore log files are missing
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MissingFullBackup">
            <summary>
            The database miss a previous full backup befor incremental backup
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadBackupDatabaseSize">
            <summary>
            The backup database size is not in 4k
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseAlreadyUpgraded">
            <summary>
            Attempted to upgrade a database that is already current
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseIncompleteUpgrade">
            <summary>
            Attempted to use a database which was only partially converted to the current format -- must restore from backup
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MissingCurrentLogFiles">
            <summary>
            Some current log files are missing for continous restore
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DbTimeTooOld">
            <summary>
            dbtime on page smaller than dbtimeBefore in record
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DbTimeTooNew">
            <summary>
            dbtime on page in advance of the dbtimeBefore in record
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MissingFileToBackup">
            <summary>
            Some log or patch files are missing during backup
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogTornWriteDuringHardRestore">
            <summary>
            torn-write was detected in a backup set during hard restore
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogTornWriteDuringHardRecovery">
            <summary>
            torn-write was detected during hard recovery (log was not part of a backup set)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogCorruptDuringHardRestore">
            <summary>
            corruption was detected in a backup set during hard restore
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogCorruptDuringHardRecovery">
            <summary>
            corruption was detected during hard recovery (log was not part of a backup set)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MustDisableLoggingForDbUpgrade">
            <summary>
            Cannot have logging enabled while attempting to upgrade db
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadRestoreTargetInstance">
            <summary>
            TargetInstance specified for restore is not found or log files don't match
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecoveredWithoutUndo">
            <summary>
            Soft recovery successfully replayed all operations, but the Undo phase of recovery was skipped
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabasesNotFromSameSnapshot">
            <summary>
            Databases to be restored are not from the same shadow copy backup
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SoftRecoveryOnSnapshot">
            <summary>
            Soft recovery on a database from a shadow copy backup set
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SectorSizeNotSupported">
            <summary>
            The physical sector size reported by the disk subsystem, is unsupported by ESE for a specific file type.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.UnicodeTranslationBufferTooSmall">
            <summary>
            Unicode translation buffer too small
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.UnicodeTranslationFail">
            <summary>
            Unicode normalization failed
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.UnicodeNormalizationNotSupported">
            <summary>
            OS does not provide support for Unicode normalisation (and no normalisation callback was specified)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ExistingLogFileHasBadSignature">
            <summary>
            Existing log file has bad signature
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ExistingLogFileIsNotContiguous">
            <summary>
            Existing log file is not contiguous
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogReadVerifyFailure">
            <summary>
            Checksum error in log file during backup
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SLVReadVerifyFailure">
            <summary>
            Checksum error in SLV file during backup
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CheckpointDepthTooDeep">
            <summary>
            too many outstanding generations between checkpoint and current generation
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RestoreOfNonBackupDatabase">
            <summary>
            hard recovery attempted on a database that wasn't a backup database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogFileNotCopied">
            <summary>
            log truncation attempted but not all required logs were copied
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidGrbit">
            <summary>
            Invalid parameter
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TermInProgress">
            <summary>
            Termination in progress
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FeatureNotAvailable">
            <summary>
            Api not supported
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidName">
            <summary>
            Invalid name
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidParameter">
            <summary>
            Invalid Api parameter
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseFileReadOnly">
            <summary>
            Tried to attach a read-only database file for read/write operations
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidDatabaseId">
            <summary>
            Invalid database id
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfMemory">
            <summary>
            Out of Memory
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfDatabaseSpace">
            <summary>
            Maximum database size reached
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfCursors">
            <summary>
            Out of table cursors
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfBuffers">
            <summary>
            Out of database page buffers
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyIndexes">
            <summary>
            Too many indexes
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyKeys">
            <summary>
            Too many columns in an index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecordDeleted">
            <summary>
            Record has been deleted
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ReadVerifyFailure">
            <summary>
            Checksum error on a database page
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.PageNotInitialized">
            <summary>
            Blank database page
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfFileHandles">
            <summary>
            Out of file handles
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DiskIO">
            <summary>
            Disk IO error
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidPath">
            <summary>
            Invalid file path
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidSystemPath">
            <summary>
            Invalid system path
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidLogDirectory">
            <summary>
            Invalid log directory
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecordTooBig">
            <summary>
            Record larger than maximum size
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyOpenDatabases">
            <summary>
            Too many open databases
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidDatabase">
            <summary>
            Not a database file
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NotInitialized">
            <summary>
            Database engine not initialized
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.AlreadyInitialized">
            <summary>
            Database engine already initialized
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InitInProgress">
            <summary>
            Database engine is being initialized
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileAccessDenied">
            <summary>
            Cannot access file, the file is locked or in use
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BufferTooSmall">
            <summary>
            Buffer is too small
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyColumns">
            <summary>
            Too many columns defined
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ContainerNotEmpty">
            <summary>
            Container is not empty
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidFilename">
            <summary>
            Filename is invalid
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidBookmark">
            <summary>
            Invalid bookmark
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnInUse">
            <summary>
            Column used in an index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidBufferSize">
            <summary>
            Data buffer doesn't match column size
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnNotUpdatable">
            <summary>
            Cannot set column value
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexInUse">
            <summary>
            Index is in use
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LinkNotSupported">
            <summary>
            Link support unavailable
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NullKeyDisallowed">
            <summary>
            Null keys are disallowed on index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NotInTransaction">
            <summary>
            Operation must be within a transaction
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyActiveUsers">
            <summary>
            Too many active database users
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidCountry">
            <summary>
            Invalid or unknown country code
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidLanguageId">
            <summary>
            Invalid or unknown language id
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidCodePage">
            <summary>
            Invalid or unknown code page
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidLCMapStringFlags">
            <summary>
            Invalid flags for LCMapString()
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.VersionStoreEntryTooBig">
            <summary>
            Attempted to create a version store entry (RCE) larger than a version bucket
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.VersionStoreOutOfMemoryAndCleanupTimedOut">
            <summary>
            Version store out of memory (and cleanup attempt failed to complete)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.VersionStoreOutOfMemory">
            <summary>
            Version store out of memory (cleanup already attempted)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotIndex">
            <summary>
            Cannot index escrow column or SLV column
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecordNotDeleted">
            <summary>
            Record has not been deleted
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyMempoolEntries">
            <summary>
            Too many mempool entries requested
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfObjectIDs">
            <summary>
            Out of btree ObjectIDs (perform offline defrag to reclaim freed/unused ObjectIds)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfLongValueIDs">
            <summary>
            Long-value ID counter has reached maximum value. (perform offline defrag to reclaim free/unused LongValueIDs)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfAutoincrementValues">
            <summary>
            Auto-increment counter has reached maximum value (offline defrag WILL NOT be able to reclaim free/unused Auto-increment values).
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfDbtimeValues">
            <summary>
            Dbtime counter has reached maximum value (perform offline defrag to reclaim free/unused Dbtime values)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfSequentialIndexValues">
            <summary>
            Sequential index counter has reached maximum value (perform offline defrag to reclaim free/unused SequentialIndex values)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RunningInOneInstanceMode">
            <summary>
            Multi-instance call with single-instance mode enabled
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RunningInMultiInstanceMode">
            <summary>
            Single-instance call with multi-instance mode enabled
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SystemParamsAlreadySet">
            <summary>
            Global system parameters have already been set
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SystemPathInUse">
            <summary>
            System path already used by another database instance
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogFilePathInUse">
            <summary>
            Logfile path already used by another database instance
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TempPathInUse">
            <summary>
            Temp path already used by another database instance
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InstanceNameInUse">
            <summary>
            Instance Name already in use
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InstanceUnavailable">
            <summary>
            This instance cannot be used because it encountered a fatal error
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseUnavailable">
            <summary>
            This database cannot be used because it encountered a fatal error
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InstanceUnavailableDueToFatalLogDiskFull">
            <summary>
            This instance cannot be used because it encountered a log-disk-full error performing an operation (likely transaction rollback) that could not tolerate failure
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OutOfSessions">
            <summary>
            Out of sessions
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.WriteConflict">
            <summary>
            Write lock failed due to outstanding write lock
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TransTooDeep">
            <summary>
            Transactions nested too deeply
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidSesid">
            <summary>
            Invalid session handle
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.WriteConflictPrimaryIndex">
            <summary>
            Update attempted on uncommitted primary index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InTransaction">
            <summary>
            Operation not allowed within a transaction
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RollbackRequired">
            <summary>
            Must rollback current transaction -- cannot commit or begin a new one
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TransReadOnly">
            <summary>
            Read-only transaction tried to modify the database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SessionWriteConflict">
            <summary>
            Attempt to replace the same record by two diffrerent cursors in the same session
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecordTooBigForBackwardCompatibility">
            <summary>
            record would be too big if represented in a database format from a previous version of Jet
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotMaterializeForwardOnlySort">
            <summary>
            The temp table could not be created due to parameters that conflict with JET_bitTTForwardOnly
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SesidTableIdMismatch">
            <summary>
            This session handle can't be used with this table id
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidInstance">
            <summary>
            Invalid instance handle
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseDuplicate">
            <summary>
            Database already exists
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseInUse">
            <summary>
            Database in use
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseNotFound">
            <summary>
            No such database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseInvalidName">
            <summary>
            Invalid database name
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseInvalidPages">
            <summary>
            Invalid number of pages
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseCorrupted">
            <summary>
            Non database file or corrupted db
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseLocked">
            <summary>
            Database exclusively locked
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotDisableVersioning">
            <summary>
            Cannot disable versioning for this database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidDatabaseVersion">
            <summary>
            Database engine is incompatible with database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.Database200Format">
            <summary>
            The database is in an older (200) format
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.Database400Format">
            <summary>
            The database is in an older (400) format
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.Database500Format">
            <summary>
            The database is in an older (500) format
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.PageSizeMismatch">
            <summary>
            The database page size does not match the engine
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyInstances">
            <summary>
            Cannot start any more database instances
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseSharingViolation">
            <summary>
            A different database instance is using this database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.AttachedDatabaseMismatch">
            <summary>
            An outstanding database attachment has been detected at the start or end of recovery, but database is missing or does not match attachment info
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseInvalidPath">
            <summary>
            Specified path to database file is illegal
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseIdInUse">
            <summary>
            A database is being assigned an id already in use
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ForceDetachNotAllowed">
            <summary>
            Force Detach allowed only after normal detach errored out
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CatalogCorrupted">
            <summary>
            Corruption detected in catalog
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.PartiallyAttachedDB">
            <summary>
            Database is partially attached. Cannot complete attach operation
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseSignInUse">
            <summary>
            Database with same signature in use
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DatabaseCorruptedNoRepair">
            <summary>
            Corrupted db but repair not allowed
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidCreateDbVersion">
            <summary>
            recovery tried to replay a database creation, but the database was originally created with an incompatible (likely older) version of the database engine
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TableLocked">
            <summary>
            Table is exclusively locked
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TableDuplicate">
            <summary>
            Table already exists
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TableInUse">
            <summary>
            Table is in use, cannot lock
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ObjectNotFound">
            <summary>
            No such table or object
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DensityInvalid">
            <summary>
            Bad file/index density
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TableNotEmpty">
            <summary>
            Table is not empty
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidTableId">
            <summary>
            Invalid table id
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyOpenTables">
            <summary>
            Cannot open any more tables (cleanup already attempted)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IllegalOperation">
            <summary>
            Oper. not supported on table
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyOpenTablesAndCleanupTimedOut">
            <summary>
            Cannot open any more tables (cleanup attempt failed to complete)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ObjectDuplicate">
            <summary>
            Table or object name in use
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidObject">
            <summary>
            Object is invalid for operation
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotDeleteTempTable">
            <summary>
            Use CloseTable instead of DeleteTable to delete temp table
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotDeleteSystemTable">
            <summary>
            Illegal attempt to delete a system table
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotDeleteTemplateTable">
            <summary>
            Illegal attempt to delete a template table
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ExclusiveTableLockRequired">
            <summary>
            Must have exclusive lock on table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FixedDDL">
            <summary>
            DDL operations prohibited on this table
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FixedInheritedDDL">
            <summary>
            On a derived table, DDL operations are prohibited on inherited portion of DDL
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotNestDDL">
            <summary>
            Nesting of hierarchical DDL is not currently supported.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DDLNotInheritable">
            <summary>
            Tried to inherit DDL from a table not marked as a template table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidSettings">
            <summary>
            System parameters were set improperly
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ClientRequestToStopJetService">
            <summary>
            Client has requested stop service
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotAddFixedVarColumnToDerivedTable">
            <summary>
            Template table was created with NoFixedVarColumnsInDerivedTables
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexCantBuild">
            <summary>
            Index build failed
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexHasPrimary">
            <summary>
            Primary index already defined
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexDuplicate">
            <summary>
            Index is already defined
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexNotFound">
            <summary>
            No such index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexMustStay">
            <summary>
            Cannot delete clustered index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexInvalidDef">
            <summary>
            Illegal index definition
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidCreateIndex">
            <summary>
            Invalid create index description
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyOpenIndexes">
            <summary>
            Out of index description blocks
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MultiValuedIndexViolation">
            <summary>
            Non-unique inter-record index keys generated for a multivalued index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexBuildCorrupted">
            <summary>
            Failed to build a secondary index that properly reflects primary index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.PrimaryIndexCorrupted">
            <summary>
            Primary index is corrupt. The database must be defragmented
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SecondaryIndexCorrupted">
            <summary>
            Secondary index is corrupt. The database must be defragmented
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidIndexId">
            <summary>
            Illegal index id
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexTuplesSecondaryIndexOnly">
            <summary>
            tuple index can only be on a secondary index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexTuplesTooManyColumns">
            <summary>
            tuple index may only have eleven columns in the index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexTuplesNonUniqueOnly">
            <summary>
            tuple index must be a non-unique index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexTuplesTextBinaryColumnsOnly">
            <summary>
            tuple index must be on a text/binary column
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexTuplesVarSegMacNotAllowed">
            <summary>
            tuple index does not allow setting cbVarSegMac
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexTuplesInvalidLimits">
            <summary>
            invalid min/max tuple length or max characters to index specified
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexTuplesCannotRetrieveFromIndex">
            <summary>
            cannot call RetrieveColumn() with RetrieveFromIndex on a tuple index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.IndexTuplesKeyTooSmall">
            <summary>
            specified key does not meet minimum tuple length
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnLong">
            <summary>
            Column value is long
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnNoChunk">
            <summary>
            No such chunk in long value
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnDoesNotFit">
            <summary>
            Field will not fit in record
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NullInvalid">
            <summary>
            Null not valid
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnIndexed">
            <summary>
            Column indexed, cannot delete
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnTooBig">
            <summary>
            Field length is greater than maximum
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnNotFound">
            <summary>
            No such column
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnDuplicate">
            <summary>
            Field is already defined
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MultiValuedColumnMustBeTagged">
            <summary>
            Attempted to create a multi-valued column, but column was not Tagged
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnRedundant">
            <summary>
            Second autoincrement or version column
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidColumnType">
            <summary>
            Invalid column data type
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TaggedNotNULL">
            <summary>
            No non-NULL tagged columns
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NoCurrentIndex">
            <summary>
            Invalid w/o a current index
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.KeyIsMade">
            <summary>
            The key is completely made
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadColumnId">
            <summary>
            Column Id Incorrect
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.BadItagSequence">
            <summary>
            Bad itagSequence for tagged column
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.ColumnInRelationship">
            <summary>
            Cannot delete, column participates in relationship
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CannotBeTagged">
            <summary>
            AutoIncrement and Version cannot be tagged
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DefaultValueTooBig">
            <summary>
            Default value exceeds maximum size
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MultiValuedDuplicate">
            <summary>
            Duplicate detected on a unique multi-valued column
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LVCorrupted">
            <summary>
            Corruption encountered in long-value tree
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.MultiValuedDuplicateAfterTruncation">
            <summary>
            Duplicate detected on a unique multi-valued column after data was normalized, and normalizing truncated the data before comparison
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DerivedColumnCorruption">
            <summary>
            Invalid column in derived table
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidPlaceholderColumn">
            <summary>
            Tried to convert column to a primary index placeholder, but column doesn't meet necessary criteria
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecordNotFound">
            <summary>
            The key was not found
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecordNoCopy">
            <summary>
            No working buffer
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.NoCurrentRecord">
            <summary>
            Currency not on a record
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecordPrimaryChanged">
            <summary>
            Primary key may not change
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.KeyDuplicate">
            <summary>
            Illegal duplicate key
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.AlreadyPrepared">
            <summary>
            Attempted to update record when record update was already in progress
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.KeyNotMade">
            <summary>
            No call to JetMakeKey
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.UpdateNotPrepared">
            <summary>
            No call to JetPrepareUpdate
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DataHasChanged">
            <summary>
            Data has changed, operation aborted
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LanguageNotSupported">
            <summary>
            Windows installation does not support language
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManySorts">
            <summary>
            Too many sort processes
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidOnSort">
            <summary>
            Invalid operation on Sort
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TempFileOpenError">
            <summary>
            Temp file could not be opened
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManyAttachedDatabases">
            <summary>
            Too many open databases
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.DiskFull">
            <summary>
            No space left on disk
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.PermissionDenied">
            <summary>
            Permission denied
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileNotFound">
            <summary>
            File not found
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileInvalidType">
            <summary>
            Invalid file type
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.AfterInitialization">
            <summary>
            Cannot Restore after init.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LogCorrupted">
            <summary>
            Logs could not be interpreted
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.InvalidOperation">
            <summary>
            Invalid operation
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.AccessDenied">
            <summary>
            Access denied
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.TooManySplits">
            <summary>
            Infinite split
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SessionSharingViolation">
            <summary>
            Multiple threads are using the same session
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.EntryPointNotFound">
            <summary>
            An entry point in a DLL we require could not be found
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SessionContextAlreadySet">
            <summary>
            Specified session already has a session context set
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SessionContextNotSetByThisThread">
            <summary>
            Tried to reset session context, but current thread did not orignally set the session context
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.SessionInUse">
            <summary>
            Tried to terminate session in use
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RecordFormatConversionFailed">
            <summary>
            Internal error during dynamic record format conversion
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OneDatabasePerSession">
            <summary>
            Just one open user database per session is allowed (JET_paramOneDatabasePerSession)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.RollbackError">
            <summary>
            error during rollback
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CallbackFailed">
            <summary>
            A callback failed
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.CallbackNotResolved">
            <summary>
            A callback function could not be found
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OSSnapshotInvalidSequence">
            <summary>
            OS Shadow copy Api used in an invalid sequence
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OSSnapshotTimeOut">
            <summary>
            OS Shadow copy ended with time-out
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OSSnapshotNotAllowed">
            <summary>
            OS Shadow copy not allowed (backup or recovery in progress)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.OSSnapshotInvalidSnapId">
            <summary>
            invalid JET_OSSNAPID
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LSCallbackNotSpecified">
            <summary>
            Attempted to use Local Storage without a callback function being specified
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LSAlreadySet">
            <summary>
            Attempted to set Local Storage for an object which already had it set
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.LSNotSet">
            <summary>
            Attempted to retrieve Local Storage from an object which didn't have it set
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileIOSparse">
            <summary>
            an I/O was issued to a location that was sparse
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileIOBeyondEOF">
            <summary>
            a read was issued to a location beyond EOF (writes will expand the file)
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileIOAbort">
            <summary>
            instructs the JET_ABORTRETRYFAILCALLBACK caller to abort the specified I/O
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileIORetry">
            <summary>
            instructs the JET_ABORTRETRYFAILCALLBACK caller to retry the specified I/O
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileIOFail">
            <summary>
            instructs the JET_ABORTRETRYFAILCALLBACK caller to fail the specified I/O
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_err.FileCompressed">
            <summary>
            read/write access is not supported on compressed files
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Api">
            <summary>
            Helper methods for the ESENT API. These aren't interop versions
            of the API, but encapsulate very common uses of the functions.
            </summary>
            <summary>
            Helper methods for the ESENT API. These aren't interop versions
            of the API, but encapsulate very common uses of the functions.
            </summary>
            <summary>
            Helper methods for the ESENT API. These methods deal with database
            meta-data.
            </summary>
            <summary>
            Internal-only methods of the Api.
            </summary>
            <summary>
            Helper methods for the ESENT API. These do data conversion for
            JetMakeKey.
            </summary>
            <summary>
            Helper methods for the ESENT API. These do data conversion for
            setting columns.
            </summary>
            <summary>
            Managed versions of the ESENT Api. This class contains static methods corresponding
            with the unmanaged ESENT Api. These methods throw exceptions when errors are returned.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MoveBeforeFirst(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Position the cursor before the first record in the table. A 
            subsequent move next will position the cursor on the first
            record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to position.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MoveAfterLast(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Position the cursor after the last record in the table. A 
            subsequent move previous will position the cursor on the
            last record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to position.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.TryMoveFirst(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Try to move to the first record in the table. If the table is empty this
            returns false, if a different error is encountered an exception is thrown.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <returns>True if the move was successful.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.TryMoveLast(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Try to move to the last record in the table. If the table is empty this
            returns false, if a different error is encountered an exception is thrown.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <returns>True if the move was successful.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.TryMoveNext(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Try to move to the next record in the table. If there is not a next record
            this returns false, if a different error is encountered an exception is thrown.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <returns>True if the move was successful.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.TryMovePrevious(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Try to move to the previous record in the table. If there is not a previous record
            this returns false, if a different error is encountered an exception is thrown.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <returns>True if the move was successful.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.TrySeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)">
            <summary>
            Efficiently positions a cursor to an index entry that matches the search
            criteria specified by the search key in that cursor and the specified
            inequality. A search key must have been previously constructed using JetMakeKey.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <param name="grbit">Seek option.</param>
            <returns>True if a record matching the criteria was found.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.TrySetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)">
            <summary>
            Temporarily limits the set of index entries that the cursor can walk using
            JetMove to those starting from the current index entry and ending at the index
            entry that matches the search criteria specified by the search key in that cursor
            and the specified bound criteria. A search key must have been previously constructed
            using JetMakeKey. Returns true if the index range is non-empty, false otherwise.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <param name="grbit">Seek option.</param>
            <returns>True if the seek was successful.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.ResetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Removes an index range created with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/> or
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.TrySetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>. If no index range is present this
            method does nothing.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to remove the index range on.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.IntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID[])">
            <summary>
            Intersect a group of index ranges and return the bookmarks of the records which are found
            in all the index ranges. 
            Also see <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetIntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXRANGE[],System.Int32,Microsoft.Isam.Esent.Interop.JET_RECORDLIST@,Microsoft.Isam.Esent.Interop.IntersectIndexesGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableids">
            The tableids to use. Each tableid must be from a different index on the same table and
            have an active index range. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>
            to create an index range.
            </param>
            <returns>
            The bookmarks of the records which are found in all the index ranges. The bookmarks 
            are returned in primary key order.
            </returns>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Api.memoryCache">
            <summary>
            Cached retrieve buffers.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Retrieves the bookmark for the record that is associated with the index entry
            at the current position of a cursor. This bookmark can then be used to
            reposition that cursor back to the same record using JetGotoBookmark. 
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the bookmark from.</param>
            <returns>The bookmark of the record.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit)">
            <summary>
            Retrieves the key for the index entry at the current position of a cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the key from.</param>
            <param name="grbit">Retrieve key options.</param>
            <returns>The retrieved key.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnSize(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves the size of a single column value from the current record.
            The record is that record associated with the index entry at the
            current position of the cursor. Alternatively, this function can
            retrieve a column from a record being created in the cursor copy
            buffer. This function can also retrieve column data from an index
            entry that references the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The size of the column. 0 if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnSize(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int32,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves the size of a single column value from the current record.
            The record is that record associated with the index entry at the
            current position of the cursor. Alternatively, this function can
            retrieve a column from a record being created in the cursor copy
            buffer. This function can also retrieve column data from an index
            entry that references the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="itagSequence">
            The sequence number of value in a multi-valued column.
            The array of values is one-based. The first value is
            sequence 1, not 0. If the record column has only one value then
            1 should be passed as the itagSequence.
            </param>
            <param name="grbit">Retrieve column options.</param>
            <returns>The size of the column. 0 if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit,Microsoft.Isam.Esent.Interop.JET_RETINFO)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            Alternatively, this function can retrieve a column from a record being created
            in the cursor copy buffer. This function can also retrieve column data from an
            index entry that references the current record. In addition to retrieving the
            actual column value, JetRetrieveColumn can also be used to retrieve the size
            of a column, before retrieving the column data itself so that application
            buffers can be sized appropriately.  
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieve column options.</param>
            <param name="retinfo">
            If pretinfo is give as NULL then the function behaves as though an itagSequence
            of 1 and an ibLongValue of 0 (zero) were given. This causes column retrieval to
            retrieve the first value of a multi-valued column, and to retrieve long data at
            offset 0 (zero).
            </param>
            <returns>The data retrieved from the column. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsString(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            The Unicode encoding is used.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a string. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsString(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Text.Encoding)">
            <summary>
            Retrieves a string column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="encoding">The string encoding to use when converting data.</param>
            <returns>The data retrieved from the column as a string. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsString(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Text.Encoding,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a string column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="encoding">The string encoding to use when converting data.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a string. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt16(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a short. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt16(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves an int16 column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a short. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt32(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as an int. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt32(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves an int32 column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as an int. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt64(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a long. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsInt64(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a long. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsFloat(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a float column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a float. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsFloat(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a float column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a float. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsDouble(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a double column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a double. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsDouble(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a double column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a double. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsBoolean(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a boolean column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a boolean. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsBoolean(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a boolean column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a boolean. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsByte(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a byte column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a byte. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsByte(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a byte column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a byte. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsGuid(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a guid column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a guid. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsGuid(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a guid column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a guid. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsDateTime(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a datetime column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as a datetime. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsDateTime(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a datetime column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as a datetime. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsUInt16(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a uint16 column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as an UInt16. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsUInt16(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a uint16 column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as an UInt16. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsUInt32(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a uint32 column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as an UInt32. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsUInt32(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a uint32 column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as an UInt32. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsUInt64(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Retrieves a uint64 column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <returns>The data retrieved from the column as an UInt64. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.RetrieveColumnAsUInt64(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit)">
            <summary>
            Retrieves a uint64 column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="grbit">Retrieval options.</param>
            <returns>The data retrieved from the column as an UInt64. Null if the column is null.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.CreateReturnValue``1(``0,System.Int32,Microsoft.Isam.Esent.Interop.JET_wrn,System.Int32)">
            <summary>
            Create the nullable return value.
            </summary>
            <typeparam name="T">The (struct) type to return.</typeparam>
            <param name="data">The data retrieved from the column.</param>
            <param name="dataSize">The size of the data.</param>
            <param name="wrn">The warning code from esent.</param>
            <param name="actualDataSize">The actual size of the data retireved fomr esent.</param>
            <returns>A nullable struct of type T.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.CheckDataSize(System.Int32,System.Int32)">
            <summary>
            Make sure the retrieved data size is at least as long as the expected size.
            An exception is thrown if the data isn't long enough.
            </summary>
            <param name="expectedDataSize">The expected data size.</param>
            <param name="actualDataSize">The size of the retrieved data.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetColumnDictionary(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Creates a dictionary which maps column names to their column IDs.
            </summary>
            <param name="sesid">The sesid to use.</param>
            <param name="tableid">The table to retrieve the information for.</param>
            <returns>A dictionary mapping column names to column IDs.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Iterates over all the columns in the table, returning information about each one.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to retrieve column information for.</param>
            <returns>An iterator over ColumnInfo for each column in the table.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String)">
            <summary>
            Iterates over all the columns in the table, returning information about each one.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database containing the table.</param>
            <param name="tablename">The name of the table.</param>
            <returns>An iterator over ColumnInfo for each column in the table.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Iterates over all the indexes in the table, returning information about each one.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to retrieve index information for.</param>
            <returns>An iterator over an IndexInfo for each index in the table.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String)">
            <summary>
            Iterates over all the indexs in the table, returning information about each one.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database containing the table.</param>
            <param name="tablename">The name of the table.</param>
            <returns>An iterator over an IndexInfo for each index in the table.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetTableNames(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID)">
            <summary>
            Returns the names of the tables in the database.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database containing the table.</param>
            <returns>An iterator over the names of the tables in the database.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.EnumerateIndexInfos(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXLIST)">
            <summary>
            Iterates over the information in the JET_INDEXLIST, returning information about each index.
            The table in the indexlist is closed when finished.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="indexlist">The indexlist to iterate over.</param>
            <returns>An iterator over IndexInfo for each index described in the JET_INDEXLIST.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetIndexInfoFromIndexlist(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXLIST)">
            <summary>
            Create an IndexInfo object from the data in the current JET_INDEXLIST entry.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="indexlist">The indexlist to take the data from.</param>
            <returns>An IndexInfo object containing the information from that record.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetIndexSegmentsFromIndexlist(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXLIST)">
            <summary>
            Create an array of IndexSegment objects from the data in the current JET_INDEXLIST entry.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="indexlist">The indexlist to take the data from.</param>
            <returns>An array of IndexSegment objects containing the information for the current index.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.EnumerateColumnInfos(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNLIST)">
            <summary>
            Iterates over the information in the JET_COLUMNLIST, returning information about each column.
            The table in the columnlist is closed when finished.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columnlist">The columnlist to iterate over.</param>
            <returns>An iterator over ColumnInfo for each column described in the JET_COLUMNLIST.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.GetColumnInfoFromColumnlist(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNLIST)">
            <summary>
            Create a ColumnInfo object from the data in the current JET_COLUMNLIST
            entry.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columnlist">The columnlist to take the data from.</param>
            <returns>A ColumnInfo object containing the information from that record.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)">
            <summary>
            The JetSetColumn function modifies a single column value in a modified record to be inserted or to
            update the current record. It can overwrite an existing value, add a new value to a sequence of
            values in a multi-valued column, remove a value from a sequence of values in a multi-valued column,
            or update all or part of a long value (a column of type <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongText"/>
            or <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongBinary"/>). 
            </summary>
            <remarks>
            This is an internal-only version of the API that takes a data buffer and an offset into the buffer.
            </remarks>
            <param name="sesid">The session which is performing the update.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
            <param name="dataSize">The size of data to set.</param>
            <param name="dataOffset">The offset in the data buffer to set data from.</param>
            <param name="grbit">SetColumn options.</param>
            <param name="setinfo">Used to specify itag or long-value offset.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit,Microsoft.Isam.Esent.Interop.JET_RETINFO)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            Alternatively, this function can retrieve a column from a record being created
            in the cursor copy buffer. This function can also retrieve column data from an
            index entry that references the current record. In addition to retrieving the
            actual column value, JetRetrieveColumn can also be used to retrieve the size
            of a column, before retrieving the column data itself so that application
            buffers can be sized appropriately.  
            </summary>
            <remarks>
            This is an internal method that takes a buffer offset as well as size.
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="data">The data buffer to be retrieved into.</param>
            <param name="dataSize">The size of the data buffer.</param>
            <param name="dataOffset">Offset into the data buffer to read data into.</param>
            <param name="actualDataSize">Returns the actual size of the data buffer.</param>
            <param name="grbit">Retrieve column options.</param>
            <param name="retinfo">
            If pretinfo is give as NULL then the function behaves as though an itagSequence
            of 1 and an ibLongValue of 0 (zero) were given. This causes column retrieval to
            retrieve the first value of a multi-valued column, and to retrieve long data at
            offset 0 (zero).
            </param>
            <returns>An ESENT warning code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.IntPtr,System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit,Microsoft.Isam.Esent.Interop.JET_RETINFO)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            Alternatively, this function can retrieve a column from a record being created
            in the cursor copy buffer. This function can also retrieve column data from an
            index entry that references the current record. In addition to retrieving the
            actual column value, JetRetrieveColumn can also be used to retrieve the size
            of a column, before retrieving the column data itself so that application
            buffers can be sized appropriately.  
            </summary>
            <remarks>
            This is an internal-use version that takes an IntPtr.
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="data">The data buffer to be retrieved into.</param>
            <param name="dataSize">The size of the data buffer.</param>
            <param name="actualDataSize">Returns the actual size of the data buffer.</param>
            <param name="grbit">Retrieve column options.</param>
            <param name="retinfo">
            If pretinfo is give as NULL then the function behaves as though an itagSequence
            of 1 and an ibLongValue of 0 (zero) were given. This causes column retrieval to
            retrieve the first value of a multi-valued column, and to retrieve long data at
            offset 0 (zero).
            </param>
            <returns>An ESENT warning code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetMakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs search keys that may then be used by JetSeek and JetSetIndexRange.
            </summary>
            <remarks>
            This is an internal (unsafe) version that takes an IntPtr.
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="dataSize">Size of the data.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)">
            <summary>
            The JetSetColumn function modifies a single column value in a modified record to be inserted or to
            update the current record. It can overwrite an existing value, add a new value to a sequence of
            values in a multi-valued column, remove a value from a sequence of values in a multi-valued column,
            or update all or part of a long value, a column of type JET_coltyp.LongText or JET_coltyp.LongBinary. 
            </summary>
            <remarks>
            This method takes an IntPtr and is intended for internal use only.
            </remarks>
            <param name="sesid">The session which is performing the update.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
            <param name="dataSize">The size of data to set.</param>
            <param name="grbit">SetColumn options.</param>
            <param name="setinfo">Used to specify itag or long-value offset.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,System.Text.Encoding,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="encoding">The encoding used to convert the string.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Boolean,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int16,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int64,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Guid,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.DateTime,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Single,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Double,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.UInt16,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.UInt32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.MakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.UInt64,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs a search key that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>
            and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.String,System.Text.Encoding)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
            <param name="encoding">The encoding used to convert the string.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.String,System.Text.Encoding,Microsoft.Isam.Esent.Interop.SetColumnGrbit)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
            <param name="encoding">The encoding used to convert the string.</param>
            <param name="grbit">SetColumn options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[])">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Boolean)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int16)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int32)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int64)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Guid)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.DateTime)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Single)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Double)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.EscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int32)">
            <summary>
            Perform atomic addition on one column. The column must be of type
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Long"/>. This function allows multiple sessions to update the
            same record concurrently without conflicts.
            </summary>
            <remarks>
            This method wraps <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetEscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit)"/>.
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update.</param>
            <param name="columnid">The column to update. This must be an escrow-updatable column.</param>
            <param name="delta">The delta to apply to the column.</param>
            <returns>The current value of the column as stored in the database (versioning is ignored).</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.UInt16)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.UInt32)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.UInt64)">
            <summary>
            Modifies a single column value in a modified record to be inserted or to
            update the current record.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.SetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[])">
            <summary>
            Sets columns.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="values">The values to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.CheckEncodingIsValid(System.Text.Encoding)">
            <summary>
            Verifies that the given encoding is valid for setting/retrieving data. Only
            the ASCII and Unicode encodings are allowed. An <see cref="T:System.ArgumentOutOfRangeException"/>
            is thrown if the encoding isn't valid.
            </summary>
            <param name="encoding">The encoding to check.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.#cctor">
            <summary>
            Initializes static members of the Api class.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String)">
            <summary>
            Allocates a new instance of the database engine.
            </summary>
            <param name="instance">Returns the new instance.</param>
            <param name="name">The name of the instance. Names must be unique.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateInstance2(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String,System.String,Microsoft.Isam.Esent.Interop.CreateInstanceGrbit)">
            <summary>
            Allocate a new instance of the database engine for use in a single
            process, with a display name specified.
            </summary>
            <param name="instance">Returns the newly create instance.</param>
            <param name="name">
            Specifies a unique string identifier for the instance to be created.
            This string must be unique within a given process hosting the
            database engine.
            </param>
            <param name="displayName">
            A display name for the instance to be created. This will be used
            in eventlog entries.
            </param>
            <param name="grbit">Creation options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetInit(Microsoft.Isam.Esent.Interop.JET_INSTANCE@)">
            <summary>
            Initialize the ESENT database engine.
            </summary>
            <param name="instance">
            The instance to initialize. If an instance hasn't been
            allocated then a new one is created and the engine
            will operate in single-instance mode.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetInit2(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,Microsoft.Isam.Esent.Interop.InitGrbit)">
            <summary>
            Initialize the ESENT database engine.
            </summary>
            <param name="instance">
            The instance to initialize. If an instance hasn't been
            allocated then a new one is created and the engine
            will operate in single-instance mode.
            </param>
            <param name="grbit">
            Initialization options.
            </param>
            <returns>
            A warning code.
            </returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetTerm(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
            <summary>
            Terminate an instance that was created with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetInit(Microsoft.Isam.Esent.Interop.JET_INSTANCE@)"/> or
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCreateInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String)"/>.
            </summary>
            <param name="instance">The instance to terminate.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetTerm2(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.TermGrbit)">
            <summary>
            Terminate an instance that was created with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetInit(Microsoft.Isam.Esent.Interop.JET_INSTANCE@)"/> or
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCreateInstance(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String)"/>.
            </summary>
            <param name="instance">The instance to terminate.</param>
            <param name="grbit">Termination options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetSystemParameter(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_param,System.Int32,System.String)">
            <summary>
            Sets database configuration options.
            </summary>
            <param name="instance">
            The instance to set the option on or <see cref="P:Microsoft.Isam.Esent.Interop.JET_INSTANCE.Nil"/>
            to set the option on all instances.
            </param>
            <param name="sesid">The session to use.</param>
            <param name="paramid">The parameter to set.</param>
            <param name="paramValue">The value of the parameter to set, if the parameter is an integer type.</param>
            <param name="paramString">The value of the parameter to set, if the parameter is a string type.</param>
            <returns>An ESENT warning code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetSystemParameter(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_param,System.Int32@,System.String@,System.Int32)">
            <summary>
            Gets database configuration options.
            </summary>
            <param name="instance">The instance to retrieve the options from.</param>
            <param name="sesid">The session to use.</param>
            <param name="paramid">The parameter to get.</param>
            <param name="paramValue">Returns the value of the parameter, if the value is an integer.</param>
            <param name="paramString">Returns the value of the parameter, if the value is a string.</param>
            <param name="maxParam">The maximum size of the parameter string.</param>
            <returns>An ESENT warning code.</returns>
            <remarks>
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_param.ErrorToString"/> passes in the error number in the paramValue, which is why it is
            a ref parameter and not an out parameter.
            </remarks>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetVersion(Microsoft.Isam.Esent.Interop.JET_SESID,System.UInt32@)">
            <summary>
            Retrieves the version of the database engine.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="version">Returns the version number of the database engine.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit)">
            <summary>
            Creates and attaches a database file.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="database">The path to the database file to create.</param>
            <param name="connect">The parameter is not used.</param>
            <param name="dbid">Returns the dbid of the new database.</param>
            <param name="grbit">Database creation options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit)">
            <summary>
            Attaches a database file for use with a database instance. In order to use the
            database, it will need to be subsequently opened with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="database">The database to attach.</param>
            <param name="grbit">Attach options.</param>
            <returns>An ESENT warning code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit)">
            <summary>
            Opens a database previously attached with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit)"/>,
            for use with a database session. This function can be called multiple times
            for the same database.
            </summary>
            <param name="sesid">The session that is opening the database.</param>
            <param name="database">The database to open.</param>
            <param name="connect">Reserved for future use.</param>
            <param name="dbid">Returns the dbid of the attached database.</param>
            <param name="grbit">Open database options.</param>
            <returns>An ESENT warning code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCloseDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,Microsoft.Isam.Esent.Interop.CloseDatabaseGrbit)">
            <summary>
            Closes a database file that was previously opened with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit)"/> or
            created with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCreateDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_DBID@,Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database to close.</param>
            <param name="grbit">Close options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetDetachDatabase(Microsoft.Isam.Esent.Interop.JET_SESID,System.String)">
            <summary>
            Releases a database file that was previously attached to a database session.
            </summary>
            <param name="sesid">The database session to use.</param>
            <param name="database">The database to detach.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetBeginSession(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_SESID@,System.String,System.String)">
            <summary>
            Initialize a new ESENT session.
            </summary>
            <param name="instance">The initialized instance to create the session in.</param>
            <param name="sesid">Returns the created session.</param>
            <param name="username">The parameter is not used.</param>
            <param name="password">The parameter is not used.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID,System.IntPtr)">
            <summary>
            Associates a session with the current thread using the given context
            handle. This association overrides the default engine requirement
            that a transaction for a given session must occur entirely on the
            same thread. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetResetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID)"/> to remove the
            association.
            </summary>
            <param name="sesid">The session to set the context on.</param>
            <param name="context">The context to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetResetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID)">
            <summary>
            Disassociates a session from the current thread. This should be
            used in conjunction with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID,System.IntPtr)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetEndSession(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.EndSessionGrbit)">
            <summary>
            Ends a session.
            </summary>
            <param name="sesid">The session to end.</param>
            <param name="grbit">The parameter is not used.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetDupSession(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_SESID@)">
            <summary>
            Initialize a new ESE session in the same instance as the given sesid.
            </summary>
            <param name="sesid">The session to duplicate.</param>
            <param name="newSesid">Returns the new session.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.OpenTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@)">
            <summary>
            Opens a cursor on a previously created table.
            </summary>
            <param name="sesid">The database session to use.</param>
            <param name="dbid">The database to open the table in.</param>
            <param name="tablename">The name of the table to open.</param>
            <param name="parameters">The parameter is not used.</param>
            <param name="parametersSize">The parameter is not used.</param>
            <param name="grbit">Table open options.</param>
            <param name="tableid">Returns the opened table.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Close an open table.
            </summary>
            <param name="sesid">The session which opened the table.</param>
            <param name="tableid">The table to close.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetDupCursor(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.DupCursorGrbit)">
            <summary>
            Duplicates an open cursor and returns a handle to the duplicated cursor.
            If the cursor that was duplicated was a read-only cursor then the
            duplicated cursor is also a read-only cursor.
            Any state related to constructing a search key or updating a record is
            not copied into the duplicated cursor. In addition, the location of the
            original cursor is not duplicated into the duplicated cursor. The
            duplicated cursor is always opened on the clustered index and its
            location is always on the first row of the table.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to duplicate.</param>
            <param name="newTableid">The duplicated cursor.</param>
            <param name="grbit">Reserved for future use.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetBeginTransaction(Microsoft.Isam.Esent.Interop.JET_SESID)">
            <summary>
            Causes a session to enter a transaction or create a new save point in an existing
            transaction.
            </summary>
            <param name="sesid">The session to begin the transaction for.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCommitTransaction(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.CommitTransactionGrbit)">
            <summary>
            Commits the changes made to the state of the database during the current save point
            and migrates them to the previous save point. If the outermost save point is committed
            then the changes made during that save point will be committed to the state of the
            database and the session will exit the transaction.
            </summary>
            <param name="sesid">The session to commit the transaction for.</param>
            <param name="grbit">Commit options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetRollback(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.RollbackTransactionGrbit)">
            <summary>
            Undoes the changes made to the state of the database
            and returns to the last save point. JetRollback will also close any cursors
            opened during the save point. If the outermost save point is undone, the
            session will exit the transaction.
            </summary>
            <param name="sesid">The session to rollback the transaction for.</param>
            <param name="grbit">Rollback options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.JET_TABLEID@)">
            <summary>
            Create an empty table. The newly created table is opened exclusively.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database to create the table in.</param>
            <param name="table">The name of the table to create.</param>
            <param name="pages">Initial number of pages in the table.</param>
            <param name="density">
            The default density of the table. This is used when doing sequential inserts.
            </param>
            <param name="tableid">Returns the tableid of the new table.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetAddColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.JET_COLUMNID@)">
            <summary>
            Add a new column to an existing table.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to add the column to.</param>
            <param name="column">The name of the column.</param>
            <param name="columndef">The definition of the column.</param>
            <param name="defaultValue">The default value of the column.</param>
            <param name="defaultValueSize">The size of the default value.</param>
            <param name="columnid">Returns the columnid of the new column.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetDeleteColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)">
            <summary>
            Deletes a column from a database table.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">A cursor on the table to delete the column from.</param>
            <param name="column">The name of the column to be deleted.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetDeleteIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)">
            <summary>
            Deletes an index from a database table.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">A cursor on the table to delete the index from.</param>
            <param name="index">The name of the index to be deleted.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetDeleteTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String)">
            <summary>
            Deletes a table from a database.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database to delete the table from.</param>
            <param name="table">The name of the table to delete.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.CreateIndexGrbit,System.String,System.Int32,System.Int32)">
            <summary>
            Creates an index over data in an ESE database. An index can be used to locate
            specific data quickly.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to create the index on.</param>
            <param name="indexName">
            Pointer to a null-terminated string that specifies the name of the index to create. 
            </param>
            <param name="grbit">Index creation options.</param>
            <param name="keyDescription">
            Pointer to a double null-terminated string of null-delimited tokens.
            </param>
            <param name="keyDescriptionLength">
            The length, in characters, of szKey including the two terminating nulls.
            </param>
            <param name="density">Initial B+ tree density.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetCreateIndex2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_INDEXCREATE[],System.Int32)">
            <summary>
            Creates indexes over data in an ESE database.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to create the index on.</param>
            <param name="indexcreates">Array of objects describing the indexes to be created.</param>
            <param name="numIndexCreates">Number of index description objects.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            Also see
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>.
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/> frees the resources associated
            with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of
            the input array.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            Also see
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>.
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="lcid">
            The locale ID to use to compare any Unicode key column data in the temporary table.
            Any locale may be used as long as the appropriate language pack has been installed
            on the machine. 
            </param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/> frees the resources associated
            with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of
            the input array.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            Also see
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="unicodeindex">
            The Locale ID and normalization flags that will be used to compare
            any Unicode key column data in the temporary table. When this 
            is not present then the default options are used. 
            </param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            with <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/> frees the resources associated
            with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of
            the input array.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF@)">
            <summary>
            Retrieves information about a table column.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table containing the column.</param>
            <param name="columnName">The name of the column.</param>
            <param name="columndef">Filled in with information about the column.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF@)">
            <summary>
            Retrieves information about a table column.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table containing the column.</param>
            <param name="columnid">The columnid of the column.</param>
            <param name="columndef">Filled in with information about the column.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNLIST@)">
            <summary>
            Retrieves information about all columns in the table.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table containing the column.</param>
            <param name="columnName">The parameter is ignored.</param>
            <param name="columnlist">Filled in with information about the columns in the table.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF@)">
            <summary>
            Retrieves information about a table column.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database that contains the table.</param>
            <param name="tablename">The name of the table containing the column.</param>
            <param name="columnName">The name of the column.</param>
            <param name="columndef">Filled in with information about the column.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetColumnInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_COLUMNLIST@)">
            <summary>
            Retrieves information about all columns in a table.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database that contains the table.</param>
            <param name="tablename">The name of the table containing the column.</param>
            <param name="columnName">This parameter is ignored.</param>
            <param name="columnlist">Filled in with information about the columns in the table.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetObjectInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,Microsoft.Isam.Esent.Interop.JET_OBJECTLIST@)">
            <summary>
            Retrieves information about database objects.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database to use.</param>
            <param name="objectlist">Filled in with information about the objects in the database.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetCurrentIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String@,System.Int32)">
            <summary>
            Ddetermines the name of the current
            index of a given cursor. This name is also used to later re-select
            that index as the current index using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetCurrentIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)"/>.
            It can also be used to discover the properties of that index using
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableIndexInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_INDEXLIST@)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to get the index name for.</param>
            <param name="indexName">Returns the name of the index.</param>
            <param name="maxNameLength">
            The maximum length of the index name. Index names are no more than 
            <see cref="F:Microsoft.Isam.Esent.Interop.SystemParameters.NameMost"/> characters.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetIndexInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,System.String,Microsoft.Isam.Esent.Interop.JET_INDEXLIST@)">
            <summary>
            Retrieves information about indexes on a table.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database to use.</param>
            <param name="tablename">The name of the table to retrieve index information about.</param>
            <param name="ignored">This parameter is ignored.</param>
            <param name="indexlist">Filled in with information about indexes on the table.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetTableIndexInfo(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String,Microsoft.Isam.Esent.Interop.JET_INDEXLIST@)">
            <summary>
            Retrieves information about indexes on a table.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to retrieve index information about.</param>
            <param name="ignored">This parameter is ignored.</param>
            <param name="indexlist">Filled in with information about indexes on the table.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGotoBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32)">
            <summary>
            Positions a cursor to an index entry for the record that is associated with
            the specified bookmark. The bookmark can be used with any index defined over
            a table. The bookmark for a record can be retrieved using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetGetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)"/>. 
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <param name="bookmark">The bookmark used to position the cursor.</param>
            <param name="bookmarkSize">The size of the bookmark.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetMove(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.MoveGrbit)">
            <summary>
            Navigate through an index. The cursor can be positioned at the start or
            end of the index and moved backwards and forwards by a specified number
            of index entries. Also see
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveFirst(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>, <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveLast(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>,
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveNext(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>, <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMovePrevious(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
            </summary>
            <param name="sesid">The session to use for the call.</param>
            <param name="tableid">The cursor to position.</param>
            <param name="numRows">An offset which indicates how far to move the cursor.</param>
            <param name="grbit">Move options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetMove(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_Move,Microsoft.Isam.Esent.Interop.MoveGrbit)">
            <summary>
            Navigate through an index. The cursor can be positioned at the start or
            end of the index and moved backwards and forwards by a specified number
            of index entries. Also see
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveFirst(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>, <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveLast(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>,
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMoveNext(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>, <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TryMovePrevious(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
            </summary>
            <param name="sesid">The session to use for the call.</param>
            <param name="tableid">The cursor to position.</param>
            <param name="numRows">An offset which indicates how far to move the cursor.</param>
            <param name="grbit">Move options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetMakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)">
            <summary>
            Constructs search keys that may then be used by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/> and <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <remarks>
            The MakeKey functions provide datatype-specific make key functionality.
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to create the key on.</param>
            <param name="data">Column data for the current key column of the current index.</param>
            <param name="dataSize">Size of the data.</param>
            <param name="grbit">Key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)">
            <summary>
            Efficiently positions a cursor to an index entry that matches the search
            criteria specified by the search key in that cursor and the specified
            inequality. A search key must have been previously constructed using 
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetMakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)"/>.
            Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TrySeek(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SeekGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <param name="grbit">Seek options.</param>
            <returns>An ESENT warning.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)">
            <summary>
            Temporarily limits the set of index entries that the cursor can walk using
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetMove(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.MoveGrbit)"/> to those starting
            from the current index entry and ending at the index entry that matches the
            search criteria specified by the search key in that cursor and the specified
            bound criteria. A search key must have been previously constructed using
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetMakeKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.MakeKeyGrbit)"/>.
            Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.TrySetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to set the index range on.</param>
            <param name="grbit">Index range options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetIntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXRANGE[],System.Int32,Microsoft.Isam.Esent.Interop.JET_RECORDLIST@,Microsoft.Isam.Esent.Interop.IntersectIndexesGrbit)">
            <summary>
            Computes the intersection between multiple sets of index entries from different secondary
            indices over the same table. This operation is useful for finding the set of records in a
            table that match two or more criteria that can be expressed using index ranges. Also see
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.IntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID[])"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="ranges">
            An the index ranges to intersect. The tableids in the ranges
            must have index ranges set on them. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetIndexRange(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit)"/>
            to create an index range.
            </param>
            <param name="numRanges">
            The number of index ranges.
            </param>
            <param name="recordlist">
            Returns information about the temporary table containing the intersection results.
            </param>
            <param name="grbit">Intersection options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetCurrentIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String)">
            <summary>
            Set the current index of a cursor.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to set the index on.</param>
            <param name="index">
            The name of the index to be selected. If this is null or empty the primary
            index will be selected.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetIndexRecordCount(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32@,System.Int32)">
            <summary>
            Counts the number of entries in the current index from the current position forward.
            The current position is included in the count. The count can be greater than the
            total number of records in the table if the current index is over a multi-valued
            column and instances of the column have multiple-values. If the table is empty,
            then 0 will be returned for the count. 
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to count the records in.</param>
            <param name="numRecords">Returns the number of records.</param>
            <param name="maxRecordsToCount">
            The maximum number of records to count. A value of 0 indicates that the count
            is unlimited.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetTableSequential(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetTableSequentialGrbit)">
            <summary>
            Notifies the database engine that the application is scanning the entire
            index that the cursor is positioned on. Consequently, the methods that
            are used to access the index data will be tuned to make this scenario as
            fast as possible. 
            Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetResetTableSequential(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ResetTableSequentialGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor that will be accessing the data.</param>
            <param name="grbit">Reserved for future use.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetResetTableSequential(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ResetTableSequentialGrbit)">
            <summary>
            Notifies the database engine that the application is no longer scanning the
            entire index the cursor is positioned on. This call reverses a notification
            sent by <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetTableSequential(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.SetTableSequentialGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor that was accessing the data.</param>
            <param name="grbit">Reserved for future use.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetRecordPosition(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECPOS@)">
            <summary>
            Returns the fractional position of the current record in the current index
            in the form of a <see cref="T:Microsoft.Isam.Esent.Interop.JET_RECPOS"/> structure.
            Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetGotoPosition(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECPOS)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor positioned on the record.</param>
            <param name="recpos">Returns the approximate fractional position of the record.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGotoPosition(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECPOS)">
            <summary>
            Moves a cursor to a new location that is a fraction of the way through
            the current index. 
            Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetGetRecordPosition(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RECPOS@)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to position.</param>
            <param name="recpos">The approximate position to move to.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)">
            <summary>
            Retrieves the bookmark for the record that is associated with the index entry
            at the current position of a cursor. This bookmark can then be used to
            reposition that cursor back to the same record using <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetGotoBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32)"/>. 
            The bookmark will be no longer than <see cref="P:Microsoft.Isam.Esent.Interop.SystemParameters.BookmarkMost"/>
            bytes.
            Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.GetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the bookmark from.</param>
            <param name="bookmark">Buffer to contain the bookmark.</param>
            <param name="bookmarkSize">Size of the bookmark buffer.</param>
            <param name="actualBookmarkSize">Returns the actual size of the bookmark.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit)">
            <summary>
            Retrieves the key for the index entry at the current position of a cursor.
            Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.RetrieveKey(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit)"/>.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the key from.</param>
            <param name="data">The buffer to retrieve the key into.</param>
            <param name="dataSize">The size of the buffer.</param>
            <param name="actualDataSize">Returns the actual size of the data.</param>
            <param name="grbit">Retrieve key options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit,Microsoft.Isam.Esent.Interop.JET_RETINFO)">
            <summary>
            Retrieves a single column value from the current record. The record is that
            record associated with the index entry at the current position of the cursor.
            Alternatively, this function can retrieve a column from a record being created
            in the cursor copy buffer. This function can also retrieve column data from an
            index entry that references the current record. In addition to retrieving the
            actual column value, JetRetrieveColumn can also be used to retrieve the size
            of a column, before retrieving the column data itself so that application
            buffers can be sized appropriately.  
            </summary>
            <remarks>
            The RetrieveColumnAs functions provide datatype-specific retrieval functions.
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the column from.</param>
            <param name="columnid">The columnid to retrieve.</param>
            <param name="data">The data buffer to be retrieved into.</param>
            <param name="dataSize">The size of the data buffer.</param>
            <param name="actualDataSize">Returns the actual size of the data buffer.</param>
            <param name="grbit">Retrieve column options.</param>
            <param name="retinfo">
            If pretinfo is give as NULL then the function behaves as though an itagSequence
            of 1 and an ibLongValue of 0 (zero) were given. This causes column retrieval to
            retrieve the first value of a multi-valued column, and to retrieve long data at
            offset 0 (zero).
            </param>
            <returns>An ESENT warning code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN[],System.Int32)">
            <summary>
            Retrieves multiple column values from the current record in a
            single operation. An array of JET_RETRIEVECOLUMN structures is
            used to describe the set of column values to be retrieved, and
            to describe output buffers for each column value to be retrieved.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve the data from.</param>
            <param name="columns">
            An array of one or more <see cref="T:Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN"/> objects
            describing the data to be retrieved.
            </param>
            <param name="numColumns">
            The number of entries in the columns array.
            </param>
            <returns>
            If any column retrieved is truncated due to an insufficient
            length buffer, then the API will return
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.BufferTruncated"/>. However other errors
            JET_wrnColumnNull are returned only in the error field of
            the <see cref="T:Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN"/> object.
            </returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetEnumerateColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32@,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN[]@,Microsoft.Isam.Esent.Interop.JET_PFNREALLOC,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit)">
            <summary>
            Efficiently retrieves a set of columns and their values from the
            current record of a cursor or the copy buffer of that cursor. The
            columns and values retrieved can be restricted by a list of
            column IDs, itagSequence numbers, and other characteristics. This
            column retrieval API is unique in that it returns information in
            dynamically allocated memory that is obtained using a
            user-provided realloc compatible callback. This new flexibility
            permits the efficient retrieval of column data with specific
            characteristics (such as size and multiplicity) that are unknown
            to the caller. This eliminates the need for the use of the discovery
            modes of JetRetrieveColumn to determine those
            characteristics in order to setup a final call to
            JetRetrieveColumn that will successfully retrieve
            the desired data.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve data from.</param>
            <param name="numColumnids">The numbers of JET_ENUMCOLUMNIDS.</param>
            <param name="columnids">
            An optional array of column IDs, each with an optional array of itagSequence
            numbers to enumerate.
            </param>
            <param name="numColumnValues">
            Returns the number of column values retrieved.
            </param>
            <param name="columnValues">
            Returns the enumerated column values.
            </param>
            <param name="allocator">
            Callback used to allocate memory.
            </param>
            <param name="allocatorContext">
            Context for the allocation callback.
            </param>
            <param name="maxDataSize">
            Sets a cap on the amount of data to return from a long text or long
            binary column. This parameter can be used to prevent the enumeration
            of an extremely large column value.
            </param>
            <param name="grbit">Retrieve options.</param>
            <returns>A warning or success.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetDelete(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Deletes the current record in a database table.
            </summary>
            <param name="sesid">The session that opened the cursor.</param>
            <param name="tableid">The cursor on a database table. The current row will be deleted.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetPrepareUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_prep)">
            <summary>
            Prepare a cursor for update.
            </summary>
            <param name="sesid">The session which is starting the update.</param>
            <param name="tableid">The cursor to start the update for.</param>
            <param name="prep">The type of update to prepare.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)">
            <summary>
            The JetUpdate function performs an update operation including inserting a new row into
            a table or updating an existing row. Deleting a table row is performed by calling
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetDelete(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
            </summary>
            <param name="sesid">The session which started the update.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="bookmark">Returns the bookmark of the updated record. This can be null.</param>
            <param name="bookmarkSize">The size of the bookmark buffer.</param>
            <param name="actualBookmarkSize">Returns the actual size of the bookmark.</param>
            <remarks>
            JetUpdate is the final step in performing an insert or an update. The update is begun by
            calling <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetPrepareUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_prep)"/> and then by calling
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)"/>
            one or more times to set the record state. Finally, <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)"/>
            is called to complete the update operation. Indexes are updated only by JetUpdate or and not during JetSetColumn.
            </remarks>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            The JetUpdate function performs an update operation including inserting a new row into
            a table or updating an existing row. Deleting a table row is performed by calling
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetDelete(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>.
            </summary>
            <param name="sesid">The session which started the update.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <remarks>
            JetUpdate is the final step in performing an insert or an update. The update is begun by
            calling <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetPrepareUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_prep)"/> and then by calling
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)"/>
            one or more times to set the record state. Finally, <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)"/>
            is called to complete the update operation. Indexes are updated only by JetUpdate or and not during JetSetColumn.
            </remarks>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumn(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,Microsoft.Isam.Esent.Interop.SetColumnGrbit,Microsoft.Isam.Esent.Interop.JET_SETINFO)">
            <summary>
            The JetSetColumn function modifies a single column value in a modified record to be inserted or to
            update the current record. It can overwrite an existing value, add a new value to a sequence of
            values in a multi-valued column, remove a value from a sequence of values in a multi-valued column,
            or update all or part of a long value (a column of type <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongText"/>
            or <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongBinary"/>). 
            </summary>
            <remarks>
            The SetColumn methods provide datatype-specific overrides which may be more efficient.
            </remarks>
            <param name="sesid">The session which is performing the update.</param>
            <param name="tableid">The cursor to update. An update should be prepared.</param>
            <param name="columnid">The columnid to set.</param>
            <param name="data">The data to set.</param>
            <param name="dataSize">The size of data to set.</param>
            <param name="grbit">SetColumn options.</param>
            <param name="setinfo">Used to specify itag or long-value offset.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_SETCOLUMN[],System.Int32)">
            <summary>
            Allows an application to set multiple column values in a single
            operation. An array of <see cref="T:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN"/> structures is
            used to describe the set of column values to be set, and to describe
            input buffers for each column value to be set.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to set the columns on.</param>
            <param name="setcolumns">
            An array of <see cref="T:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN"/> structures describing the
            data to set.
            </param>
            <param name="numColumns">
            Number of entries in the setcolumns parameter.
            </param>
            <returns>
            A warning. If the last column set has a warning, then
            this warning will be returned from JetSetColumns itself.
            </returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetGetLock(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.GetLockGrbit)">
            <summary>
            Explicitly reserve the ability to update a row, write lock, or to explicitly prevent a row from
            being updated by any other session, read lock. Normally, row write locks are acquired implicitly as a
            result of updating rows. Read locks are usually not required because of record versioning. However,
            in some cases a transaction may desire to explicitly lock a row to enforce serialization, or to ensure
            that a subsequent operation will succeed. 
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to use. A lock will be acquired on the current record.</param>
            <param name="grbit">Lock options, use this to specify which type of lock to obtain.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetEscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit)">
            <summary>
            Performs an atomic addition operation on one column. This function allows
            multiple sessions to update the same record concurrently without conflicts.
            Also see <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.EscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Int32)"/>.
            </summary>
            <param name="sesid">
            The session to use. The session must be in a transaction.
            </param>
            <param name="tableid">The cursor to update.</param>
            <param name="columnid">
            The column to update. This must be an escrow updatable column.
            </param>
            <param name="delta">The buffer containing the addend.</param>
            <param name="deltaSize">The size of the addend.</param>
            <param name="previousValue">
            An output buffer that will recieve the current value of the column. This buffer
            can be null.
            </param>
            <param name="previousValueLength">The size of the previousValue buffer.</param>
            <param name="actualPreviousValueLength">Returns the actual size of the previousValue.</param>
            <param name="grbit">Escrow update options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.JetIdle(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.IdleGrbit)">
            <summary>
            Performs idle cleanup tasks or checks the version store status in ESE.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="grbit">A combination of JetIdleGrbit flags.</param>
            <returns>An error code if the operation fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Api.Check(System.Int32)">
            <summary>
            Throw an exception if the parameter is an ESE error,
            returns a <see cref="T:Microsoft.Isam.Esent.Interop.JET_wrn"/> otherwise.
            </summary>
            <param name="err">The error code to check.</param>
            <returns>An ESENT warning code (possibly success).</returns>
        </member>
        <member name="E:Microsoft.Isam.Esent.Interop.Api.HandleError">
            <summary>
            Gets or sets the ErrorHandler for all errors. This can
            be used for logging or to throw an exception.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Api.Impl">
            <summary>
            Gets or sets the IJetApi this is called for all functions.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Api.ConversionFunc`1">
            <summary>
            Conversion function delegate.
            </summary>
            <typeparam name="TResult">The return type.</typeparam>
            <param name="data">The data to convert.</param>
            <returns>An object of type TRresult.</returns>
            <remarks>
            We create this delegate here, instead of using the built-in
            Func/Converter generics to avoid taking a dependency on 
            a higher version (3.5) of the CLR.
            </remarks>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Api.ErrorHandler">
            <summary>
            Delegate for error handling code.
            </summary>
            <param name="error">The error that has been encountered.</param>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ObjectInfoFlags">
            <summary>
            Flags for ESENT objects (tables).
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ObjectInfoFlags.System">
            <summary>
            Object is for internal use only.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ObjectInfoFlags.TableFixedDDL">
            <summary>
            Table's DDL is fixed.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ObjectInfoFlags.TableTemplate">
            <summary>
            Table's DDL is inheritable (implied FixedDDL).
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ObjectInfoFlags.TableDerived">
            <summary>
            Table's DDL is inherited from a template table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ObjectInfoFlags.TableNoFixedVarColumnsInDerivedTables">
            <summary>
            Used in conjunction with JET_bitObjectTableTemplate.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EnumerableColumnInfo">
            <summary>
            Iterates over all the columns in the table, returning information about each one.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EnumerableColumnInfo.#ctor(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Initializes a new instance of the EnumerableColumnInfo class.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to retrieve column information for.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EnumerableColumnInfo.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the ColumnInfo objects describing
            the columns in the table.
            </summary>
            <returns>
            An enumerator that iterates through the ColumnInfo objects describing
            the columns in the table.
            </returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EnumerableColumnInfo.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the ColumnInfo objects describing
            the columns in the table.
            </summary>
            <returns>
            An enumerator that iterates through the ColumnInfo objects describing
            the columns in the table.
            </returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EnumerableColumnInfo.GetColumnInfoFromColumnlist(Microsoft.Isam.Esent.Interop.JET_COLUMNLIST)">
            <summary>
            Create a ColumnInfo object from the data in the current JET_COLUMNLIST
            entry.
            </summary>
            <param name="columnlist">The columnlist to take the data from.</param>
            <returns>A ColumnInfo object containing the information from that record.</returns>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_RETRIEVECOLUMN">
            <summary>
            The native version of the <see cref="T:Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN"/> structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN">
            <summary>
            Contains input and output parameters for <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetRetrieveColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_RETRIEVECOLUMN[],System.Int32)"/>.
            Fields in the structure describe what column value to retrieve, how to
            retrieve it, and where to save results.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.CreateInstanceGrbit">
            <summary>
            Options for JetCreateInstance2.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateInstanceGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.InitGrbit">
            <summary>
            Options for JetInit2.
            </summary>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.ReplayIgnoreLostLogs"/>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.InitGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit">
            <summary>
            Options for JetCreateDatabase.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit.OverwriteExisting">
            <summary>
            By default, if JetCreateDatabase is called and the database already exists,
            the Api call will fail and the original database will not be overwritten.
            OverwriteExisting changes this behavior, and the old database
            will be overwritten with a new one.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateDatabaseGrbit.RecoveryOff">
            <summary>
            Turns off logging. Setting this bit loses the ability to replay log files
            and recover the database to a consistent usable state after a crash.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit">
            <summary>
            Options for JetAttachDatabase.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit.ReadOnly">
            <summary>
             Prevents modifications to the database.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.AttachDatabaseGrbit.DeleteCorruptIndexes">
            <summary>
            If JET_paramEnableIndexChecking has been set, all indexes over Unicode
            data will be deleted.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit">
            <summary>
            Options for JetOpenDatabase.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit.ReadOnly">
            <summary>
            Prevents modifications to the database.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenDatabaseGrbit.Exclusive">
            <summary>
            Allows only a single session to attach a database.
            Normally, several sessions can open a database.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.CloseDatabaseGrbit">
            <summary>
            Options for JetCloseDatabase.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CloseDatabaseGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.TermGrbit">
            <summary>
            Options for JetTerm2.
            </summary>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.Dirty"/>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TermGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TermGrbit.Complete">
            <summary>
            Requests that the instance be shut down cleanly. Any optional
            cleanup work that would ordinarily be done in the background at
            run time is completed immediately.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TermGrbit.Abrupt">
            <summary>
            Requests that the instance be shut down as quickly as possible.
            Any optional work that would ordinarily be done in the
            background at run time is abandoned. 
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.CommitTransactionGrbit">
            <summary>
            Options for JetCommitTransaction.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CommitTransactionGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CommitTransactionGrbit.LazyFlush">
            <summary>
            The transaction is committed normally but this Api does not wait for
            the transaction to be flushed to the transaction log file before returning
            to the caller. This drastically reduces the duration of a commit operation
            at the cost of durability. Any transaction that is not flushed to the log
            before a crash will be automatically aborted during crash recovery during
            the next call to JetInit. If WaitLastLevel0Commit or WaitAllLevel0Commit
            are specified, this option is ignored.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CommitTransactionGrbit.WaitLastLevel0Commit">
            <summary>
             If the session has previously committed any transactions and they have not yet
             been flushed to the transaction log file, they should be flushed immediately.
             This Api will wait until the transactions have been flushed before returning
             to the caller. This is useful if the application has previously committed several
             transactions using JET_bitCommitLazyFlush and now wants to flush all of them to disk.
            </summary>
            <remarks>
            This option may be used even if the session is not currently in a transaction.
            This option cannot be used in combination with any other option.
            </remarks>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.RollbackTransactionGrbit">
            <summary>
            Options for JetRollbackTransaction.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RollbackTransactionGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RollbackTransactionGrbit.RollbackAll">
            <summary>
            This option requests that all changes made to the state of the
            database during all save points be undone. As a result, the
            session will exit the transaction.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EndSessionGrbit">
            <summary>
            Options for JetEndSession.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EndSessionGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.OpenTableGrbit">
            <summary>
            Options for JetOpenTable.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.DenyRead">
            <summary>
            This table cannot be opened for read access by another session.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.DenyWrite">
            <summary>
            This table cannot be opened for write access by another session.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.NoCache">
            <summary>
            Do not cache pages for this table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.PermitDDL">
            <summary>
            Allow DDL modifications to a table flagged as FixedDDL. This option
            must be used with DenyRead.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.Preread">
            <summary>
            Provides a hint that the table is probably not in the buffer cache, and
            that pre-reading may be beneficial to performance.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.ReadOnly">
            <summary>
            Request read-only access to the table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.Sequential">
            <summary>
            Assume a sequential access pattern and prefetch database pages.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.OpenTableGrbit.Updatable">
            <summary>
            Request write access to the table.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.DupCursorGrbit">
            <summary>
            Options for JetDupCursor.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.DupCursorGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.SetColumnGrbit">
            <summary>
            Options for JetSetColumn.
            </summary>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.Compressed"/>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.Uncompressed"/>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.AppendLV">
            <summary>
            This option is used to append data to a column of type JET_coltypLongText
            or JET_coltypLongBinary. The same behavior can be achieved by determining
            the size of the existing long value and specifying ibLongValue in psetinfo.
            However, its simpler to use this grbit since knowing the size of the existing
            column value is not necessary.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.OverwriteLV">
            <summary>
            This option is used replace the existing long value with the newly provided
            data. When this option is used, it is as though the existing long value has
            been set to 0 (zero) length prior to setting the new data.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.RevertToDefaultValue">
            <summary>
            This option is only applicable for tagged, sparse or multi-valued columns.
            It causes the column to return the default column value on subsequent retrieve
            column operations. All existing column values are removed.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.SeparateLV">
            <summary>
            This option is used to force a long value, columns of type JET_coltyp.LongText
            or JET_coltyp.LongBinary, to be stored separately from the remainder of record
            data. This occurs normally when the size of the long value prevents it from being 
            stored with remaining record data. However, this option can be used to force the
            long value to be stored separately. Note that long values four bytes in size
            of smaller cannot be forced to be separate. In such cases, the option is ignored.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.SizeLV">
            <summary>
            This option is used to interpret the input buffer as a integer number of bytes
            to set as the length of the long value described by the given columnid and if
            provided, the sequence number in psetinfo->itagSequence. If the size given is
            larger than the existing column value, the column will be extended with 0s.
            If the size is smaller than the existing column value then the value will be
            truncated.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.UniqueMultiValues">
            <summary>
            This option is used to enforce that all values in a multi-valued column are
            distinct. This option compares the source column data, without any
            transformations, to other existing column values and an error is returned
            if a duplicate is found. If this option is given, then AppendLV, OverwriteLV
            and SizeLV cannot also be given.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.UniqueNormalizedMultiValues">
            <summary>
            This option is used to enforce that all values in a multi-valued column are
            distinct. This option compares the key normalized transformation of column
            data, to other similarly transformed existing column values and an error is
            returned if a duplicate is found. If this option is given, then AppendLV, 
            OverwriteLV and SizeLV cannot also be given.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.ZeroLength">
            <summary>
            This option is used to set a value to zero length. Normally, a column value
            is set to NULL by passing a cbMax of 0 (zero). However, for some types, like
            JET_coltyp.Text, a column value can be 0 (zero) length instead of NULL, and
            this option is used to differentiate between NULL and 0 (zero) length.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetColumnGrbit.IntrinsicLV">
            <summary>
            Try to store long-value columns in the record, even if they exceed the default
            separation size.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit">
            <summary>
            Options for JetRetrieveColumn.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit.RetrieveCopy">
            <summary>
             This flag causes retrieve column to retrieve the modified value instead of
             the original value. If the value has not been modified, then the original
             value is retrieved. In this way, a value that has not yet been inserted or
             updated may be retrieved during the operation of inserting or updating a record.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit.RetrieveFromIndex">
            <summary>
            This option is used to retrieve column values from the index, if possible,
            without accessing the record. In this way, unnecessary loading of records
            can be avoided when needed data is available from index entries themselves.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit.RetrieveFromPrimaryBookmark">
            <summary>
            This option is used to retrieve column values from the index bookmark,
            and may differ from the index value when a column appears both in the
            primary index and the current index. This option should not be specified
            if the current index is the clustered, or primary, index. This bit cannot
            be set if RetrieveFromIndex is also set. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit.RetrieveTag">
            <summary>
            This option is used to retrieve the sequence number of a multi-valued
            column value in JET_RETINFO.itagSequence. Retrieving the sequence number
            can be a costly operation and should only be done if necessary. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit.RetrieveNull">
            <summary>
            This option is used to retrieve multi-valued column NULL values. If
            this option is not specified, multi-valued column NULL values will
            automatically be skipped. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit.RetrieveIgnoreDefault">
            <summary>
            This option affects only multi-valued columns and causes a NULL
            value to be returned when the requested sequence number is 1 and
            there are no set values for the column in the record. 
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit">
            <summary>
            Options for JetEnumerateColumns.
            </summary>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Server2003.Server2003Grbits.EnumerateIgnoreUserDefinedDefault"/>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.EnumerateInRecordOnly"/>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit.EnumerateCompressOutput">
            <summary>
            When enumerating column values, all columns for which we are retrieving
            all values and that have only one non-NULL column value may be returned
            in a compressed format. The status for such columns will be set to
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/> and the size of the column value
            and the memory containing the column value will be returned directly in
            the <see cref="T:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN"/> structure. It is not guaranteed that
            all eligible columns are compressed in this manner. See
            <see cref="T:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN"/> for more information.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit.EnumerateCopy">
            <summary>
            This option indicates that the modified column values of the record
            should be enumerated rather than the original column values. If a
            column value has not been modified, the original column value is
            enumerated. In this way, a column value that has not yet been inserted
            or updated may be enumerated when inserting or updating a record.
            </summary>
            <remarks>
            This option is identical to <see cref="F:Microsoft.Isam.Esent.Interop.RetrieveColumnGrbit.RetrieveCopy"/>.
            </remarks>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit.EnumerateIgnoreDefault">
            <summary>
            If a given column is not present in the record then no column value
            will be returned. Ordinarily, the default value for the column,
            if any, would be returned in this case. It is guaranteed that if the
            column is set to a value different than the default value then that
            different value will be returned (that is, if a column with a
            default value is explicitly set to NULL then a NULL will be returned
            as the value for that column). Even if this option is requested, it
            is still possible to see a column value that happens to be equal to
            the default value. No effort is made to remove column values that
            match their default values.
            It is important to remember that this option affects the output of
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetEnumerateColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32@,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN[]@,Microsoft.Isam.Esent.Interop.JET_PFNREALLOC,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit)"/> when used with 
            <see cref="F:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit.EnumeratePresenceOnly"/> or
            <see cref="F:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit.EnumerateTaggedOnly"/>.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit.EnumeratePresenceOnly">
            <summary>
            If a non-NULL value exists for the requested column or column value
            then the associated data is not returned. Instead, the associated
            status for that column or column value will be set to
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnPresent"/>. If the column or column value
            is NULL then <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnNull"/> will be returned as usual.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit.EnumerateTaggedOnly">
            <summary>
            When enumerating all column values in the record (for example,that is
            when numColumnids is zero), only tagged column values will be returned.
            This option is not allowed when enumerating a specific array of column IDs.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.MoveGrbit">
            <summary>
            Options for JetMove.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MoveGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MoveGrbit.MoveKeyNE">
            <summary>
            Moves the cursor forward or backward by the number of index entries
            required to skip the requested number of index key values encountered
            in the index. This has the effect of collapsing index entries with
            duplicate key values into a single index entry.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.MakeKeyGrbit">
            <summary>
            Options for JetMakeKey.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.NewKey">
            <summary>
            A new search key should be constructed. Any previously existing search
            key is discarded.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.NormalizedKey">
            <summary>
            When this option is specified, all other options are ignored, any
            previously existing search key is discarded, and the contents of the
            input buffer are loaded as the new search key.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.KeyDataZeroLength">
            <summary>
            If the size of the input buffer is zero and the current key column
            is a variable length column, this option indicates that the input
            buffer contains a zero length value. Otherwise, an input buffer size
            of zero would indicate a NULL value.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.StrLimit">
            <summary>
            This option indicates that the search key should be constructed
            such that any key columns that come after the current key column
            should be considered to be wildcards.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.SubStrLimit">
            <summary>
            This option indicates that the search key should be constructed
            such that the current key column is considered to be a prefix
            wildcard and that any key columns that come after the current
            key column should be considered to be wildcards.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.FullColumnStartLimit">
            <summary>
            The search key should be constructed such that any key columns
            that come after the current key column should be considered to
            be wildcards.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.FullColumnEndLimit">
            <summary>
            The search key should be constructed in such a way that any key
            columns that come after the current key column are considered to
            be wildcards.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.PartialColumnStartLimit">
            <summary>
            The search key should be constructed such that the current key
            column is considered to be a prefix wildcard and that any key
            columns that come after the current key column should be considered
            to be wildcards. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MakeKeyGrbit.PartialColumnEndLimit">
            <summary>
            The search key should be constructed such that the current key
            column is considered to be a prefix wildcard and that any key
            columns that come after the current key column should be considered
            to be wildcards.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit">
            <summary>
            Options for JetRetrieveKey.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.RetrieveKeyGrbit.RetrieveCopy">
            <summary>
            Retrieve the currently constructed key.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.SeekGrbit">
            <summary>
            Options for JetSeek.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SeekGrbit.SeekEQ">
            <summary>
            The cursor will be positioned at the index entry closest to the
            start of the index that exactly matches the search key.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SeekGrbit.SeekLT">
            <summary>
            The cursor will be positioned at the index entry closest to the
            end of the index that is less than an index entry that would
            exactly match the search criteria.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SeekGrbit.SeekLE">
            <summary>
            The cursor will be positioned at the index entry closest to the
            end of the index that is less than or equal to an index entry
            that would exactly match the search criteria.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SeekGrbit.SeekGE">
            <summary>
            The cursor will be positioned at the index entry closest to the
            start of the index that is greater than or equal to an index
            entry that would exactly match the search criteria.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SeekGrbit.SeekGT">
            <summary>
            The cursor will be positioned at the index entry closest to the
            start of the index that is greater than an index entry that
            would exactly match the search criteria.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SeekGrbit.SetIndexRange">
            <summary>
            An index range will automatically be setup for all keys that
            exactly match the search key. 
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit">
            <summary>
            Options for JetSetIndexRange.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit.RangeInclusive">
            <summary>
            This option indicates that the limit of the index range is inclusive.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit.RangeUpperLimit">
            <summary>
            The search key in the cursor represents the search criteria for the
            index entry closest to the end of the index that will match the index
            range. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit.RangeInstantDuration">
            <summary>
            The index range should be removed as soon as it has been established.
            This is useful for testing for the existence of index entries that
            match the search criteria.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetIndexRangeGrbit.RangeRemove">
            <summary>
            Cancel and existing index range.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.IndexRangeGrbit">
            <summary>
            Options for the JET_INDEXRANGE object.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.IndexRangeGrbit.RecordInIndex">
            <summary>
            Records in the cursors indexrange should be included in the output.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.IntersectIndexesGrbit">
            <summary>
            Options for JetIntersectIndexes.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.IntersectIndexesGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.SetTableSequentialGrbit">
            <summary>
            Options for JetSetTableSequential.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SetTableSequentialGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ResetTableSequentialGrbit">
            <summary>
            Options for JetResetTableSequential.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ResetTableSequentialGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.GetLockGrbit">
            <summary>
            Options for JetGetLock.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.GetLockGrbit.Read">
            <summary>
            Acquire a read lock on the current record. Read locks are incompatible with
            write locks already held by other sessions but are compatible with read locks
            held by other sessions.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.GetLockGrbit.Write">
            <summary>
             Acquire a write lock on the current record. Write locks are not compatible
             with write or read locks held by other sessions but are compatible with
             read locks held by the same session.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit">
            <summary>
            Options for JetEscrowUpdate.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit.NoRollback">
            <summary>
            Even if the session performing the escrow update has its transaction rollback
            this update will not be undone. As the log records may not be flushed to disk,
            recent escrow updates done with this flag may be lost if there is a crash.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ColumndefGrbit">
            <summary>
            Options for the JET_COLUMNDEF structure.
            </summary>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.ColumnCompressed"/>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnFixed">
            <summary>
            The column will be fixed. It will always use the same amount of space in a row,
            regardless of how much data is being stored in the column. ColumnFixed
            cannot be used with ColumnTagged. This bit cannot be used with long values
            (that is JET_coltyp.LongText and JET_coltyp.LongBinary).
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnTagged">
            <summary>
             The column will be tagged. Tagged columns do not take up any space in the database
             if they do not contain data. This bit cannot be used with ColumnFixed.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnNotNULL">
            <summary>
            The column must never be set to a NULL value. On Windows XP this can only be applied to
            fixed columns (bit, byte, integer, etc).
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnVersion">
            <summary>
            The column is a version column that specifies the version of the row. The value of
            this column starts at zero and will be automatically incremented for each update on
            the row. This option can only be applied to JET_coltyp.Long columns. This option cannot
            be used with ColumnAutoincrement, ColumnEscrowUpdate, or ColumnTagged.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnAutoincrement">
            <summary>
            The column will automatically be incremented. The number is an increasing number, and
            is guaranteed to be unique within a table. The numbers, however, might not be continuous.
            For example, if five rows are inserted into a table, the "autoincrement" column could
            contain the values { 1, 2, 6, 7, 8 }. This bit can only be used on columns of type
            JET_coltyp.Long or JET_coltyp.Currency.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnMultiValued">
            <summary>
            The column can be multi-valued.
            A multi-valued column can have zero, one, or more values
            associated with it. The various values in a multi-valued column are identified by a number
            called the itagSequence member, which belongs to various structures, including:
            JET_RETINFO, JET_SETINFO, JET_SETCOLUMN, JET_RETRIEVECOLUMN, and JET_ENUMCOLUMNVALUE.
            Multi-valued columns must be tagged columns; that is, they cannot be fixed-length or
            variable-length columns.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnEscrowUpdate">
            <summary>
             Specifies that a column is an escrow update column. An escrow update column can be
             updated concurrently by different sessions with JetEscrowUpdate and will maintain
             transactional consistency. An escrow update column must also meet the following conditions:
             An escrow update column can be created only when the table is empty. 
             An escrow update column must be of type JET_coltypLong. 
             An escrow update column must have a default value.
             JET_bitColumnEscrowUpdate cannot be used in conjunction with ColumnTagged,
             ColumnVersion, or ColumnAutoincrement. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnUnversioned">
            <summary>
            The column will be created in an without version information. This means that other
            transactions that attempt to add a column with the same name will fail. This bit
            is only useful with JetAddColumn. It cannot be used within a transaction.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.ColumnUserDefinedDefault">
            <summary>
            The default value for a column will be provided by a callback function. A column that
            has a user-defined default must be a tagged column. Specifying JET_bitColumnUserDefinedDefault
            means that pvDefault must point to a JET_USERDEFINEDDEFAULT structure, and cbDefault must be
            set to sizeof( JET_USERDEFINEDDEFAULT ).
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.TTKey">
            <summary>
            The column will be a key column for the temporary table. The order
            of the column definitions with this option specified in the input
            array will determine the precedence of each key column for the
            temporary table. The first column definition in the array that
            has this option set will be the most significant key column and
            so on. If more key columns are requested than can be supported
            by the database engine then this option is ignored for the
            unsupportable key columns.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.TTDescending">
            <summary>
            The sort order of the key column for the temporary table should
            be descending rather than ascending. If this option is specified
             without <see cref="F:Microsoft.Isam.Esent.Interop.ColumndefGrbit.TTKey"/> then this option is ignored.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.CreateIndexGrbit">
            <summary>
            Options for JetCreateIndex.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexUnique">
            <summary>
            Duplicate index entries (keys) are disallowed. This is enforced when JetUpdate is called,
            not when JetSetColumn is called.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexPrimary">
            <summary>
            The index is a primary (clustered) index. Every table must have exactly one primary index.
            If no primary index is explicitly defined over a table, then the database engine will
            create its own primary index.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexDisallowNull">
            <summary>
            None of the columns over which the index is created may contain a NULL value.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexIgnoreNull">
            <summary>
            Do not add an index entry for a row if all of the columns being indexed are NULL.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexIgnoreAnyNull">
            <summary>
            Do not add an index entry for a row if any of the columns being indexed are NULL.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexIgnoreFirstNull">
            <summary>
            Do not add an index entry for a row if the first column being indexed is NULL.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexLazyFlush">
            <summary>
            Specifies that the index operations will be logged lazily. JET_bitIndexLazyFlush does not
            affect the laziness of data updates. If the indexing operations is interrupted by process
            termination, Soft Recovery will still be able to able to get the database to a consistent
            state, but the index may not be present.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexEmpty">
            <summary>
            Do not attempt to build the index, because all entries would evaluate to NULL. grbit MUST
            also specify JET_bitIgnoreAnyNull when JET_bitIndexEmpty is passed. This is a performance
            enhancement. For example if a new column is added to a table, then an index is created over
            this newly added column, all of the records in the table would be scanned even though they
            would never get added to the index anyway. Specifying JET_bitIndexEmpty skips the scanning
            of the table, which could potentially take a long time.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexUnversioned">
            <summary>
            Causes index creation to be visible to other transactions. Normally a session in a
            transaction will not be able to see an index creation operation in another session. This
            flag can be useful if another transaction is likely to create the same index, so that the
            second index-create will simply fail instead of potentially causing many unnecessary database
            operations. The second transaction may not be able to use the index immediately. The index
            creation operation needs to complete before it is usable. The session must not currently be in
            a transaction to create an index without version information.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.CreateIndexGrbit.IndexSortNullsHigh">
            <summary>
            Specifying this flag causes NULL values to be sorted after data for all columns in the index.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.IndexKeyGrbit">
            <summary>
            Key definition grbits. Used when retrieving information about an index.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.IndexKeyGrbit.Ascending">
            <summary>
            Key segment is ascending.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.IndexKeyGrbit.Descending">
            <summary>
            Key segment is descending.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ConditionalColumnGrbit">
            <summary>
            Options for the JET_CONDITIONALCOLUMN structure.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ConditionalColumnGrbit.ColumnMustBeNull">
            <summary>
            The column must be null for an index entry to appear in the index.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ConditionalColumnGrbit.ColumnMustBeNonNull">
            <summary>
            The column must be non-null for an index entry to appear in the index.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.TempTableGrbit">
            <summary>
            Options for temporary table creation.
            </summary>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Server2003.Server2003Grbits.ForwardOnly"/>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.IntrinsicLVsOnly"/>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.Indexed">
            <summary>
            This option requests that the temporary table be flexible enough to 
            permit the use of JetSeek to lookup records by index key. If this 
            functionality it not required then it is best to not request it. If this 
            functionality is not requested then the temporary table manager may be 
            able to choose a strategy for managing the temporary table that will 
            result in improved performance. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.Unique">
            <summary>
            This option requests that records with duplicate index keys be removed 
            from the final set of records in the temporary table. 
            Prior to Windows Server 2003, the database engine always assumed this 
            option to be in effect due to the fact that all clustered indexes must 
            also be a primary key and thus must be unique. As of Windows Server 
            2003, it is now possible to create a temporary table that does NOT 
            remove duplicates when the <see cref="F:Microsoft.Isam.Esent.Interop.Server2003.Server2003Grbits.ForwardOnly"/>
            option is also specified. 
            It is not possible to know which duplicate will win and which duplicates 
            will be discarded in general. However, when the 
            <see cref="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.ErrorOnDuplicateInsertion"/> option is requested then the first 
            record with a given index key to be inserted into the temporary table 
            will always win. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.Updatable">
            <summary>
            This option requests that the temporary table be flexible enough to 
            allow records that have previously been inserted to be subsequently 
            changed. If this functionality it not required then it is best to not 
            request it. If this functionality is not requested then the temporary 
            table manager may be able to choose a strategy for managing the 
            temporary table that will result in improved performance. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.Scrollable">
            <summary>
            This option requests that the temporary table be flexible enough to 
            allow records to be scanned in arbitrary order and direction using 
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetMove(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.MoveGrbit)"/>.
            If this functionality it not required then it is best to not 
            request it. If this functionality is not requested then the temporary 
            table manager may be able to choose a strategy for managing the 
            temporary table that will result in improved performance. 
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.SortNullsHigh">
            <summary>
            This option requests that NULL key column values sort closer
            to the end of the index than non-NULL key column values.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.ForceMaterialization">
            <summary>
            This option forces the temporary table manager to abandon
            any attempt to choose a clever strategy for managing the
            temporary table that will result in enhanced performance.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.ErrorOnDuplicateInsertion">
            <summary>
            This option requests that any attempt to insert a record with the same 
            index key as a previously inserted record will immediately fail with 
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_err.KeyDuplicate"/>. If this option is not requested then a duplicate 
            may be detected immediately and fail or may be silently removed later 
            depending on the strategy chosen by the database engine to implement the 
            temporary table based on the requested functionality. If this 
            functionality it not required then it is best to not request it. If this 
            functionality is not requested then the temporary table manager may be 
            able to choose a strategy for managing the temporary table that will 
            result in improved performance. 
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.IdleGrbit">
            <summary>
            Options for JetIdle() API
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.IdleGrbit.None">
            <summary>
            Default options.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.IdleGrbit.FlushBuffers">
            <summary>Triggers cleanup of the version store.</summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.IdleGrbit.Compact">
            <summary>Reserverd for future use. If this flag is specified, the API will return JET_errInvalidgrbit.</summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.IdleGrbit.GetStatus">
            <summary>Returns <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.IdleFull"/> if version store is more than half full.</summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTLIST">
            <summary>
            The native version of the JET_OBJECTLIST structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST">
            <summary>
            Information about a temporary table containing information
            about all tables for a given database.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.SetFromNativeObjectlist(Microsoft.Isam.Esent.Interop.NATIVE_OBJECTLIST)">
            <summary>
            Sets the fields of the object from a native JET_OBJECTLIST struct.
            </summary>
            <param name="value">
            The native objectlist to set the values from.
            </param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.tableid">
            <summary>
            Gets tableid of the temporary table. This should be closed
            when the table is no longer needed.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.cRecord">
            <summary>
            Gets the number of records in the temporary table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.columnidobjectname">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the name of the table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.columnidobjtyp">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the type of the table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.columnidgrbit">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the grbits used when the table was created.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.columnidflags">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the table flags (e.g. the system table flag).
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.columnidcRecord">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the number of records in the table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_OBJECTLIST.columnidcPage">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the number of pages used by the table.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_ColInfo">
            <summary>
            Info levels for retrieving column info.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_ColInfo.Default">
            <summary>
            Default option. Retrieves a JET_COLUMNDEF.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_ColInfo.List">
            <summary>
            Retrieves a JET_COLUMNLIST structure, containing all the columns
            in the table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_ColInfo.ByColid">
            <summary>
            Retrieves a JET_COLUMNDEF, the szColumnName argument is interpreted
            as a pointer to a columnid.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ColumnValue">
            <summary>
            Base class for objects that represent a column value to be set.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnValue.#ctor">
            <summary>
            Initializes a new instance of the ColumnValue class.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.Columnid">
            <summary>
            Gets or sets the columnid to be set.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.SetGrbit">
            <summary>
            Gets or sets column retrieval options.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.ItagSequence">
            <summary>
            Gets or sets the column itag sequence.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnValue.Error">
            <summary>
            Gets the error generated by setting this column.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ColumnValueOfStruct`1">
            <summary>
            Set a column of a struct type (e.g. Int32/Guid).
            </summary>
            <typeparam name="T">Type to set.</typeparam>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnValueOfStruct`1.ToString">
            <summary>
            Gets a string representation of this object.
            </summary>
            <returns>A string representation of this object.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnValueOfStruct`1.Value">
            <summary>
            Gets or sets the value to retrieve.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.BoolColumnValue">
            <summary>
            A <see cref="T:System.Boolean"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ByteColumnValue">
            <summary>
            A <see cref="T:System.Byte"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Int16ColumnValue">
            <summary>
            An <see cref="T:System.Int16"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.UInt16ColumnValue">
            <summary>
            A <see cref="T:System.UInt16"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Int32ColumnValue">
            <summary>
            An <see cref="T:System.Int32"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.UInt32ColumnValue">
            <summary>
            A <see cref="T:System.UInt32"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Int64ColumnValue">
            <summary>
            An <see cref="T:System.Int64"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.UInt64ColumnValue">
            <summary>
            A <see cref="T:System.UInt64"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.FloatColumnValue">
            <summary>
            A <see cref="T:System.Single"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.DoubleColumnValue">
            <summary>
            A <see cref="T:System.Double"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.DateTimeColumnValue">
            <summary>
            A <see cref="T:System.Guid"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.GuidColumnValue">
            <summary>
            A <see cref="T:System.Guid"/> column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.StringColumnValue">
            <summary>
            A Unicode string column value.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.StringColumnValue.ToString">
            <summary>
            Gets a string representation of this object.
            </summary>
            <returns>A string representation of this object.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.StringColumnValue.Value">
            <summary>
            Gets or sets the value of the column. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.SetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[])"/> to update a
            record with the column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.BytesColumnValue">
            <summary>
            A byte array column value.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.BytesColumnValue.Value">
            <summary>
            Gets or sets the value of the column. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.SetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.ColumnValue[])"/> to update a
            record with the column value.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_wrn">
            <summary>
            ESENT warning codes.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.Success">
            <summary>
            Successful operation.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.RemainingVersions">
            <summary>
            The version store is still active
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.UniqueKey">
            <summary>
            seek on non-unique index yielded a unique key
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.SeparateLongValue">
            <summary>
            Column is a separated long-value
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.SkipThisRecord">
            <summary>
            INTERNAL ERROR
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.TargetInstanceRunning">
            <summary>
            TargetInstance specified for restore is running
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.DatabaseRepaired">
            <summary>
            Database corruption has been repaired
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnNull">
            <summary>
            Column is NULL-valued
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.BufferTruncated">
            <summary>
            Buffer too small for data
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.DatabaseAttached">
            <summary>
            Database is already attached
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.SortOverflow">
            <summary>
            Sort does not fit in memory
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.SeekNotEqual">
            <summary>
            Exact match not found during seek
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.NoErrorInfo">
            <summary>
            No extended error information
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.NoIdleActivity">
            <summary>
            No idle activity occured
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.NoWriteLock">
            <summary>
            No write lock at transaction level 0
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSetNull">
            <summary>
            Column set to NULL-value
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.TableEmpty">
            <summary>
            Opened an empty table
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.TableInUseBySystem">
            <summary>
            System cleanup has a cursor open on the table
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.CorruptIndexDeleted">
            <summary>
            Out of date index removed
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnMaxTruncated">
            <summary>
            Max length too big, truncated
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.CopyLongValue">
            <summary>
            Single instance column bursted
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSkipped">
            <summary>
            Column value(s) not returned because the corresponding column id or itagSequence requested for enumeration was null
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnNotLocal">
            <summary>
            Column value(s) not returned because they could not be reconstructed from the data at hand
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnMoreTags">
            <summary>
            Column values exist that were not requested for enumeration
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnTruncated">
            <summary>
            Column value truncated at the requested size limit during enumeration
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnPresent">
            <summary>
            Column values exist but were not returned by request
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue">
            <summary>
            Column value returned in JET_COLUMNENUM as a result of JET_bitEnumerateCompressOutput
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnDefault">
            <summary>
            Column value(s) not returned because they were set to their default value(s) and JET_bitEnumerateIgnoreDefault was specified
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.KeyChanged">
            <summary>
            Moved to new key
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.FileOpenReadOnly">
            <summary>
            Database file is read only
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.IdleFull">
            <summary>
            Idle registry full
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.DefragAlreadyRunning">
            <summary>
            Online defrag already running on specified database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.DefragNotRunning">
            <summary>
            Online defrag not running on specified database
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_wrn.CallbackNotRegistered">
            <summary>
            Unregistered a non-existant callback function
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Server2003.Server2003Grbits">
            <summary>
            Grbits that have been added to the Windows Server 2003 version of ESENT.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Server2003.Server2003Grbits.ForwardOnly">
            <summary>
            This option requests that the temporary table only be created if the
            temporary table manager can use the implementation optimized for
            intermediate query results. If any characteristic of the temporary
            table would prevent the use of this optimization then the operation
            will fail with JET_errCannotMaterializeForwardOnlySort. A side effect
            of this option is to allow the temporary table to contain records
            with duplicate index keys. See <see cref="F:Microsoft.Isam.Esent.Interop.TempTableGrbit.Unique"/>
            for more information.
            </summary>        
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Server2003.Server2003Grbits.EnumerateIgnoreUserDefinedDefault">
            <summary>
            If a given column is not present in the record and it has a user
            defined default value then no column value will be returned.
            This option will prevent the callback that computes the user defined
            default value for the column from being called when enumerating
            the values for that column.
            </summary>
            <remarks>
            This option is only available for Windows Server 2003 SP1 and later
            operating systems.
            </remarks>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ColumnInfo">
            <summary>
            Information about one esent column. This is not an interop
            class, but is used by the meta-data helper methods.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnInfo.Name">
            <summary>
            Gets the name of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnInfo.Columnid">
            <summary>
            Gets the ID of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnInfo.Coltyp">
            <summary>
            Gets the type of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnInfo.Cp">
            <summary>
            Gets the code page of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnInfo.MaxLength">
            <summary>
            Gets the maximum length of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnInfo.DefaultValue">
            <summary>
            Gets the default value of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnInfo.Grbit">
            <summary>
            Gets the column options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO">
            <summary>
            The native version of the JET_OBJECTINFO structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO">
            <summary>
            The JET_OBJECTINFO structure holds information about an object.
            Tables are the only object types that are currently supported.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_OBJECTINFO.SetFromNativeObjectinfo(Microsoft.Isam.Esent.Interop.NATIVE_OBJECTINFO)">
            <summary>
            Sets the fields of the object from a native JET_OBJECTINFO struct.
            </summary>
            <param name="value">
            The native objectlist to set the values from.
            </param>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.MemoryCache">
            <summary>
            Cache allocated chunks of memory that are needed for very short periods
            of time. The memory is not zeroed on allocation.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MemoryCache.DefaultBufferSize">
            <summary>
            Default size for newly allocated buffers.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MemoryCache.MaxBufferSize">
            <summary>
            Maximum buffer size to cache.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.MemoryCache.cachedBuffer">
            <summary>
            Currently cached buffer.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.MemoryCache.Allocate">
            <summary>
            Allocates a chunk of memory. If memory is cached it is returned. If no memory
            is cached then it is allocated. Check the size of the returned buffer to determine
            how much memory was allocated.
            </summary>
            <returns>A new memory buffer.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.MemoryCache.Free(System.Byte[])">
            <summary>
            Frees an unused buffer. This may be added to the cache.
            </summary>
            <param name="data">The memory to free.</param>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS">
            <summary>
            Contains cumulative statistics on the work performed by the database
            engine on the current thread. This information is returned via
            <see cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetGetThreadStats(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS@)"/>.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.op_Addition(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS,Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS)">
            <summary>
            Add the stats in two JET_THREADSTATS structures.
            </summary>
            <param name="t1">The first JET_THREADSTATS.</param>
            <param name="t2">The second JET_THREADSTATS.</param>
            <returns>A JET_THREADSTATS containing the result of adding the stats in t1 and t2.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.op_Subtraction(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS,Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS)">
            <summary>
            Calculate the differeence in stats between two JET_THREADSTATS structures.
            </summary>
            <param name="t1">The first JET_THREADSTATS.</param>
            <param name="t2">The second JET_THREADSTATS.</param>
            <returns>A JET_THREADSTATS containing the difference in stats between t1 and t2.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.ToString">
            <summary>
            Gets a string representation of this object.
            </summary>
            <returns>A string representation of this object.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.SetFromNativeThreadstats(Microsoft.Isam.Esent.Interop.Vista.NATIVE_THREADSTATS)">
            <summary>
            Sets the fields of the object from a NATIVE_THREADSTATS struct.
            </summary>
            <param name="value">
            The native threadstats to set the values from.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.GetPluralS(System.Int32)">
            <summary>
            Get the plural suffix ('s') for the given number.
            </summary>
            <param name="n">The number.</param>
            <returns>'s' if n is greater than 1.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPageReferenced">
            <summary>
            Gets the total number of database pages visited by the database
            engine on the current thread.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPageRead">
            <summary>
            Gets the total number of database pages fetched from disk by the
            database engine on the current thread.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPagePreread">
            <summary>
            Gets the total number of database pages prefetched from disk by
            the database engine on the current thread.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPageDirtied">
            <summary>
            Gets the total number of database pages, with no unwritten changes,
            that have been modified by the database engine on the current thread.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cPageRedirtied">
            <summary>
            Gets the total number of database pages, with unwritten changes, that
            have been modified by the database engine on the current thread.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cLogRecord">
            <summary>
            Gets the total number of transaction log records that have been
            generated by the database engine on the current thread.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS.cbLogRecord">
            <summary>
            Gets the total size in bytes of transaction log records that
            have been generated by the database engine on the current thread.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Vista.NATIVE_THREADSTATS">
            <summary>
            The native version of the JET_THREADSTATS structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Windows7.Windows7Param">
            <summary>
            System parameters that have been added to the Windows 7 version of ESENT.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Param.WaypointLatency">
            <summary>
            This parameter sets the number of logs that esent will defer database
            flushes for. This can be used to increase database recoverability if
            failures cause logfiles to be lost.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Param.LVChunkSizeMost">
            <summary>
            This parameter is used to retrieve the chunk size of long-value
            (blob) data. Setting and retrieving data in multiples of this 
            size increases efficiency.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Transaction">
            <summary>
            A class that encapsulates a transaction on a JET_SESID.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EsentResource">
            <summary>
            This is the base class for all esent resource objects.
            Subclasses of this class can allocate and release unmanaged
            resources.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentResource.Finalize">
            <summary>
            Finalizes an instance of the EsentResource class.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentResource.Dispose">
            <summary>
            Dispose of this object, releasing the underlying
            Esent resource.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentResource.CheckObjectIsNotDisposed">
            <summary>
            Throw an exception if this object has been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentResource.ResourceWasAllocated">
            <summary>
            Called by a subclass when a resource is allocated.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentResource.ResourceWasReleased">
            <summary>
            Called by a subclass when a resource is freed.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentResource.ReleaseResource">
            <summary>
            Implemented by the subclass to release a resource.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentResource.HasResource">
            <summary>
            Gets a value indicating whether the underlying resource
            is currently allocated.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Transaction.sesid">
            <summary>
            The underlying JET_SESID.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Transaction.#ctor(Microsoft.Isam.Esent.Interop.JET_SESID)">
            <summary>
            Initializes a new instance of the Transaction class. This automatically
            begins a transaction. The transaction will be rolled back if
            not explicitly committed.
            </summary>
            <param name="sesid">The session to start the transaction for.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Transaction.Begin">
            <summary>
            Begin a transaction. This object should not currently be
            in a transaction.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Transaction.Commit(Microsoft.Isam.Esent.Interop.CommitTransactionGrbit)">
            <summary>
            Commit a transaction. This object should be in a transaction.
            </summary>
            <param name="grbit">JetCommitTransaction options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Transaction.Rollback">
            <summary>
            Rollback a transaction. This object should be in a transaction.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Transaction.ReleaseResource">
            <summary>
            Called when the transaction is being disposed while active.
            This should rollback the transaction.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Transaction.IsInTransaction">
            <summary>
            Gets a value indicating whether this object is currently in a
            transaction.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_RETINFO">
            <summary>
            The native version of the JET_RETINFO structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_RETINFO">
            <summary>
            Contains optional input and output parameters for JetRetrieveColumn.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_RETINFO.GetNativeRetinfo">
            <summary>
            Get a NATIVE_RETINFO structure representing the object.
            </summary>
            <returns>A NATIVE_RETINFO whose members match the class.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_RETINFO.SetFromNativeRetinfo(Microsoft.Isam.Esent.Interop.NATIVE_RETINFO)">
            <summary>
            Sets the fields of the object from a NATIVE_RETINFO structure.
            </summary>
            <param name="value">The NATIVE_RETINFO which will be used to set the fields.</param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_RETINFO.ibLongValue">
            <summary>
            Gets or sets the offset to the first byte to be retrieved from a column of
            type <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongBinary"/>, or <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongText"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_RETINFO.itagSequence">
            <summary>
            Gets or sets the sequence number of value in a multi-valued column.
            The array of values is one-based. The first value is
            sequence 1, not 0. If the record column has only one value then
            1 should be passed as the itagSequence.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_RETINFO.columnidNextTagged">
            <summary>
            Gets the columnid of the retrieved tagged, multi-valued or
            sparse, column when all tagged columns are retrieved by passing
            0 as the columnid to JetRetrieveColumn.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_RECPOS">
            <summary>
            The native version of the JET_RETINFO structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_RECPOS">
            <summary>
            Represents a fractional position within an index. This is used by JetGotoPosition
            and JetGetRecordPosition.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_RECPOS.GetNativeRecpos">
            <summary>
            Get a NATIVE_RECPOS structure representing the object.
            </summary>
            <returns>A NATIVE_RECPOS whose members match the class.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_RECPOS.SetFromNativeRecpos(Microsoft.Isam.Esent.Interop.NATIVE_RECPOS)">
            <summary>
            Sets the fields of the object from a NATIVE_RECPOS structure.
            </summary>
            <param name="value">The NATIVE_RECPOS which will be used to set the fields.</param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_RECPOS.centriesLT">
            <summary>
            Gets or sets the approximate number of index entries less than the key.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_RECPOS.centriesTotal">
            <summary>
            Gets or sets the approximate number of entries in the index.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_CP">
            <summary>
            Codepage for an ESENT column.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_CP.None">
            <summary>
            Code page for non-text columns.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_CP.Unicode">
            <summary>
            Unicode encoding.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_CP.ASCII">
            <summary>
            ASCII encoding.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_IdxInfo">
            <summary>
            Info levels for retrieving information about indexes.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_IdxInfo.InfoList">
            <summary>
            Retrieve a <see cref="T:Microsoft.Isam.Esent.Interop.JET_INDEXLIST"/> containing a list of the indexes.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.EsentException">
            <summary>
            Base class for ESENT exceptions.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.EsentException.#ctor">
            <summary>
            Initializes a new instance of the EsentException class.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.EsentException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the EsentException class with a specified error message.
            </summary>
            <param name="message">The message that describes the error.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.EsentException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the EsentException class with a specified error message and
            a reference to the inner exception that is the cause of this exception.
            </summary>
            <param name="message">The message that describes the error.</param>
            <param name="innerException">
            The exception that is the cause of the current exception, or a null reference
            (Nothing in Visual Basic) if no inner exception is specified.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.EsentException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the EsentException class. This constructor
            is used to deserialize a serialized exception.
            </summary>
            <param name="info">The data needed to deserialize the object.</param>
            <param name="context">The deserialization context.</param>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.TableEnumerator`1">
            <summary>
            Table enumerator object. This can enumerate over a table, returning objects for
            each record.
            </summary>
            <typeparam name="TReturn">The type of object returned by the enumerator.</typeparam>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TableEnumerator`1.converter">
            <summary>
            Function that produces the enumerated object.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TableEnumerator`1.sesid">
            <summary>
            The session used for the enumeration.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.TableEnumerator`1.tableid">
            <summary>
            The table being iterated over. This will be closed when the Enumerator is closed.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.TableEnumerator`1.#ctor(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.TableEnumerator{`0}.ObjectConversionDelegate)">
            <summary>
            Initializes a new instance of the TableEnumerator class.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">
            The table to iterate over. This tableid will be closed when the iterator is disposed.
            </param>
            <param name="converter">The conversion function.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.TableEnumerator`1.Dispose">
            <summary>
            Free the JET_TABLEID when enumeration is finished.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.TableEnumerator`1.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the
            first element in the collection.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.TableEnumerator`1.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            True if the enumerator was successfully advanced to the next
            element; false if the enumerator has passed the end of the collection.
            </returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.TableEnumerator`1.Dispose(System.Boolean)">
            <summary>
            Called when the object is being disposed or finalized.
            </summary>
            <param name="disposing">True if the function was called from Dispose.</param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.TableEnumerator`1.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.TableEnumerator`1.System#Collections#IEnumerator#Current">
            <summary>
            Gets the current element in the collection.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.TableEnumerator`1.ObjectConversionDelegate">
            <summary>
            Conversion function. This takes a tableid, which will be positioned on a record and
            should return the desired object.
            </summary>
            <param name="tableid">A tableid positioned on the record.</param>
            <returns>A new object.</returns>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Vista.VistaApi">
            <summary>
            ESENT APIs that were first supported in Windows Vista.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            Also see
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>,
            <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>.
            </summary>
            <remarks>
            Introduced in Windows Vista. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])"/>
            for earlier versions of Esent.
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="temporarytable">
            Description of the temporary table to create on input. After a
            successful call, the structure contains the handle to the temporary
            table and column identifications. Use <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetCloseTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID)"/>
            to free the temporary table when finished.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetGetThreadStats(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS@)">
            <summary>
            Retrieves performance information from the database engine for the
            current thread. Multiple calls can be used to collect statistics
            that reflect the activity of the database engine on this thread
            between those calls. 
            </summary>
            <param name="threadstats">Returns the thread statistics data.</param>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Vista.NATIVE_OPENTEMPORARYTABLE">
            <summary>
            The native version of the JET_OPENTEMPORARYTABLE structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE">
            <summary>
            A collection of parameters for the JetOpenTemporaryTable method.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.GetNativeOpenTemporaryTable">
            <summary>
            Returns the unmanaged opentemporarytable that represents this managed class.
            </summary>
            <returns>
            A native (interop) version of the JET_OPENTEMPORARYTABLE.
            </returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.prgcolumndef">
            <summary>
            Gets or sets the column definitions for the columns created in
            the temporary table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.ccolumn">
            <summary>
            Gets or sets the number of columns in <see cref="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.prgcolumndef"/>.
            </summary>
            <seealso cref="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.prgcolumnid"/>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.pidxunicode">
            <summary>
            Gets or sets the locale ID and normalization flags to use to compare any Unicode
            key column data in the temporary table. When this parameter is
            null, then the default LCID will be used to compare any Unicode key
            columns in the temporary table. The default LCID is the U.S. English
            locale. When this parameter is null, then the default normalization
            flags will be used to compare any Unicode key column data in the temp
            table. The default normalization flags are: NORM_IGNORECASE,
            NORM_IGNOREKANATYPE, and NORM_IGNOREWIDTH.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.grbit">
            <summary>
            Gets or sets options for the temp table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.prgcolumnid">
            <summary>
            Gets or sets the output buffer that receives the array of column
            IDs generated during the creation of the temporary table. The
            column IDs in this array will exactly correspond to the input array
            of column definitions. As a result, the size of this buffer must
            correspond to the size of <see cref="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.prgcolumndef"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.cbKeyMost">
            <summary>
            Gets or sets the maximum size for a key representing a given row. The maximum
            key size may be set to control how keys are truncated. Key
            truncation is important because it can affect when rows are
            considered to be distinct. If this parameter is set to 0 or
            255 then the maximum key size and its semantics will remain
            identical to the maximum key size supported by Windows Server 2003
            and previous releases. This parameter may also be set to a larger
            value as a function of the database page size for the instance
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_param.DatabasePageSize"/>. See
            <see cref="F:Microsoft.Isam.Esent.Interop.Vista.VistaParam.KeyMost"/> for more information.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.cbVarSegMac">
            <summary>
            Gets or sets maximum amount of data that will be used from any
            variable lengthcolumn to construct a key for a given row. This
            parameter may be used to control the amount of key space consumed
            by any given key column. This limit is in bytes. If this parameter
            is zero or is the same as the <see cref="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.cbKeyMost"/> property
            then no limit is in effect.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE.tableid">
            <summary>
            Gets the table handle for the temporary table created as a result
            of a successful call to JetOpenTemporaryTable.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Implementation.JetApi">
            <summary>
            Calls to the ESENT interop layer. These calls take the managed types (e.g. JET_SESID) and
            return errors.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetCreateInstance2(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String,System.String,Microsoft.Isam.Esent.Interop.CreateInstanceGrbit)">
            <summary>
            Allocate a new instance of the database engine for use in a single
            process, with a display name specified.
            </summary>
            <param name="instance">Returns the newly create instance.</param>
            <param name="name">
            Specifies a unique string identifier for the instance to be created.
            This string must be unique within a given process hosting the
            database engine.
            </param>
            <param name="displayName">
            A display name for the instance to be created. This will be used
            in eventlog entries.
            </param>
            <param name="grbit">Creation options.</param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetInit2(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,Microsoft.Isam.Esent.Interop.InitGrbit)">
            <summary>
            Initialize the ESENT database engine.
            </summary>
            <param name="instance">
            The instance to initialize. If an instance hasn't been
            allocated then a new one is created and the engine
            will operate in single-instance mode.
            </param>
            <param name="grbit">
            Initialization options.
            </param>
            <returns>An error or warning.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetGetVersion(Microsoft.Isam.Esent.Interop.JET_SESID,System.UInt32@)">
            <summary>
            Retrieves the version of the database engine.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="version">Returns the version number of the database engine.</param>
            <returns>An error code if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetSetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID,System.IntPtr)">
            <summary>
            Associates a session with the current thread using the given context
            handle. This association overrides the default engine requirement
            that a transaction for a given session must occur entirely on the
            same thread. 
            </summary>
            <param name="sesid">The session to set the context on.</param>
            <param name="context">The context to set.</param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetResetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID)">
            <summary>
            Disassociates a session from the current thread. This should be
            used in conjunction with JetSetSessionContext.
            </summary>
            <param name="sesid">The session to use.</param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetGetThreadStats(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS@)">
            <summary>
            Retrieves performance information from the database engine for the
            current thread. Multiple calls can be used to collect statistics
            that reflect the activity of the database engine on this thread
            between those calls. 
            </summary>
            <param name="threadstats">
            Returns the thread statistics..
            </param>
            <returns>An error code if the operation fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetCreateIndex2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_INDEXCREATE[],System.Int32)">
            <summary>
            Creates indexes over data in an ESE database.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to create the index on.</param>
            <param name="indexcreates">Array of objects describing the indexes to be created.</param>
            <param name="numIndexCreates">Number of index description objects.</param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            frees the resources associated with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of the input array.
            </param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="lcid">
            The locale ID to use to compare any Unicode key column data in the temporary table.
            Any locale may be used as long as the appropriate language pack has been installed
            on the machine. 
            </param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            frees the resources associated with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of the input array.
            </param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="unicodeindex">
            The Locale ID and normalization flags that will be used to compare
            any Unicode key column data in the temporary table. When this 
            is not present then the default options are used. 
            </param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            frees the resources associated with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of the input array.
            </param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            </summary>
            <remarks>
            Introduced in Windows Vista;
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="temporarytable">
            Description of the temporary table to create on input. After a
            successful call, the structure contains the handle to the temporary
            table and column identifications.
            </param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetGetCurrentIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String@,System.Int32)">
            <summary>
            JetGetCurrentIndex function determines the name of the current
            index of a given cursor. This name is also used to later re-select
            that index as the current index using JetSetCurrentIndex. It can
            also be used to discover the properties of that index using
            JetGetTableIndexInfo.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to get the index name for.</param>
            <param name="indexName">Returns the name of the index.</param>
            <param name="maxNameLength">
            The maximum length of the index name. Index names are no more than 
            Api.MaxNameLength characters.
            </param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetIntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXRANGE[],System.Int32,Microsoft.Isam.Esent.Interop.JET_RECORDLIST@,Microsoft.Isam.Esent.Interop.IntersectIndexesGrbit)">
            <summary>
            Computes the intersection between multiple sets of index entries from different secondary
            indices over the same table. This operation is useful for finding the set of records in a
            table that match two or more criteria that can be expressed using index ranges. 
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="ranges">
            An the index ranges to intersect. The tableids in the ranges
             must have index ranges set on them.
            </param>
            <param name="numRanges">
            The number of index ranges.
            </param>
            <param name="recordlist">
            Returns information about the temporary table containing the intersection results.
            </param>
            <param name="grbit">Intersection options.</param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetEnumerateColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32@,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN[]@,Microsoft.Isam.Esent.Interop.JET_PFNREALLOC,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit)">
            <summary>
            Efficiently retrieves a set of columns and their values from the
            current record of a cursor or the copy buffer of that cursor. The
            columns and values retrieved can be restricted by a list of
            column IDs, itagSequence numbers, and other characteristics. This
            column retrieval API is unique in that it returns information in
            dynamically allocated memory that is obtained using a
            user-provided realloc compatible callback. This new flexibility
            permits the efficient retrieval of column data with specific
            characteristics (such as size and multiplicity) that are unknown
            to the caller. This eliminates the need for the use of the discovery
            modes of JetRetrieveColumn to determine those
            characteristics in order to setup a final call to
            JetRetrieveColumn that will successfully retrieve
            the desired data.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve data from.</param>
            <param name="numColumnids">The numbers of JET_ENUMCOLUMNIDS.</param>
            <param name="columnids">
            An optional array of column IDs, each with an optional array of itagSequence
            numbers to enumerate.
            </param>
            <param name="numColumnValues">
            Returns the number of column values retrieved.
            </param>
            <param name="columnValues">
            Returns the enumerated column values.
            </param>
            <param name="allocator">
            Callback used to allocate memory.
            </param>
            <param name="allocatorContext">
            Context for the allocation callback.
            </param>
            <param name="maxDataSize">
            Sets a cap on the amount of data to return from a long text or long
            binary column. This parameter can be used to prevent the enumeration
            of an extremely large column value.
            </param>
            <param name="grbit">Retrieve options.</param>
            <returns>A warning, error or success.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetSetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN*,System.Int32)">
            <summary>
            Allows an application to set multiple column values in a single
            operation. An array of <see cref="T:Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN"/> structures is
            used to describe the set of column values to be set, and to describe
            input buffers for each column value to be set.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to set the columns on.</param>
            <param name="setcolumns">
            An array of <see cref="T:Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN"/> structures describing the
            data to set.
            </param>
            <param name="numColumns">
            Number of entries in the setcolumns parameter.
            </param>
            <returns>An error code or warning.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetEscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit)">
            <summary>
            Performs an atomic addition operation on one column. This function allows
            multiple sessions to update the same record concurrently without conflicts.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update.</param>
            <param name="columnid">
            The column to update. This must be an escrow updatable column.
            </param>
            <param name="delta">The buffer containing the addend.</param>
            <param name="deltaSize">The size of the addend.</param>
            <param name="previousValue">
            An output buffer that will recieve the current value of the column. This buffer
            can be null.
            </param>
            <param name="previousValueLength">The size of the previousValue buffer.</param>
            <param name="actualPreviousValueLength">Returns the actual size of the previousValue.</param>
            <param name="grbit">Escrow update options.</param>
            <returns>An error code if the operation fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.IJetApi.JetIdle(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.IdleGrbit)">
            <summary>
            Performs idle cleanup tasks or checks the version store status in ESE.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="grbit">A combination of JetIdleGrbit flags.</param>
            <returns>An error code if the operation fails.</returns>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Implementation.JetApi.traceSwitch">
            <summary>
            API call tracing.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Implementation.JetApi.versionOverride">
            <summary>
            The version of esent. If this is zero then it is looked up
            with <see cref="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetGetVersion(Microsoft.Isam.Esent.Interop.JET_SESID,System.UInt32@)"/>.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.#ctor(System.UInt32)">
            <summary>
            Initializes a new instance of the JetApi class. This allows the version
            to be set.
            </summary>
            <param name="version">
            The version of Esent. This is used to override the results of
            <see cref="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetGetVersion(Microsoft.Isam.Esent.Interop.JET_SESID,System.UInt32@)"/>.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.#ctor">
            <summary>
            Initializes a new instance of the JetApi class.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetCreateInstance2(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,System.String,System.String,Microsoft.Isam.Esent.Interop.CreateInstanceGrbit)">
            <summary>
            Allocate a new instance of the database engine for use in a single
            process, with a display name specified.
            </summary>
            <param name="instance">Returns the newly create instance.</param>
            <param name="name">
            Specifies a unique string identifier for the instance to be created.
            This string must be unique within a given process hosting the
            database engine.
            </param>
            <param name="displayName">
            A display name for the instance to be created. This will be used
            in eventlog entries.
            </param>
            <param name="grbit">Creation options.</param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetInit2(Microsoft.Isam.Esent.Interop.JET_INSTANCE@,Microsoft.Isam.Esent.Interop.InitGrbit)">
            <summary>
            Initialize the ESENT database engine.
            </summary>
            <param name="instance">
            The instance to initialize. If an instance hasn't been
            allocated then a new one is created and the engine
            will operate in single-instance mode.
            </param>
            <param name="grbit">
            Initialization options.
            </param>
            <returns>An error or a warning.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetGetVersion(Microsoft.Isam.Esent.Interop.JET_SESID,System.UInt32@)">
            <summary>
            Retrieves the version of the database engine.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="version">Returns the version number of the database engine.</param>
            <returns>An error code if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetSetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID,System.IntPtr)">
            <summary>
            Associates a session with the current thread using the given context
            handle. This association overrides the default engine requirement
            that a transaction for a given session must occur entirely on the
            same thread. 
            </summary>
            <param name="sesid">The session to set the context on.</param>
            <param name="context">The context to set.</param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetResetSessionContext(Microsoft.Isam.Esent.Interop.JET_SESID)">
            <summary>
            Disassociates a session from the current thread. This should be
            used in conjunction with JetSetSessionContext.
            </summary>
            <param name="sesid">The session to use.</param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetGetThreadStats(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS@)">
            <summary>
            Retrieves performance information from the database engine for the
            current thread. Multiple calls can be used to collect statistics
            that reflect the activity of the database engine on this thread
            between those calls. 
            </summary>
            <param name="threadstats">
            Returns the thread statistics..
            </param>
            <returns>An error code if the operation fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetCreateIndex2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_INDEXCREATE[],System.Int32)">
            <summary>
            Creates indexes over data in an ESE database.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to create the index on.</param>
            <param name="indexcreates">Array of objects describing the indexes to be created.</param>
            <param name="numIndexCreates">Number of index description objects.</param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetOpenTempTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            frees the resources associated with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of the input array.
            </param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetOpenTempTable2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,System.Int32,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="lcid">
            The locale ID to use to compare any Unicode key column data in the temporary table.
            Any locale may be used as long as the appropriate language pack has been installed
            on the machine. 
            </param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            frees the resources associated with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of the input array.
            </param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetOpenTempTable3(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32,Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX,Microsoft.Isam.Esent.Interop.TempTableGrbit,Microsoft.Isam.Esent.Interop.JET_TABLEID@,Microsoft.Isam.Esent.Interop.JET_COLUMNID[])">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="columns">
            Column definitions for the columns created in the temporary table.
            </param>
            <param name="numColumns">Number of column definitions.</param>
            <param name="unicodeindex">
            The Locale ID and normalization flags that will be used to compare
            any Unicode key column data in the temporary table. When this 
            is not present then the default options are used. 
            </param>
            <param name="grbit">Table creation options.</param>
            <param name="tableid">
            Returns the tableid of the temporary table. Closing this tableid
            frees the resources associated with the temporary table.
            </param>
            <param name="columnids">
            The output buffer that receives the array of column IDs generated
            during the creation of the temporary table. The column IDs in this
            array will exactly correspond to the input array of column definitions.
            As a result, the size of this buffer must correspond to the size of the input array.
            </param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetOpenTemporaryTable(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.Vista.JET_OPENTEMPORARYTABLE)">
            <summary>
            Creates a temporary table with a single index. A temporary table
            stores and retrieves records just like an ordinary table created
            using JetCreateTableColumnIndex. However, temporary tables are
            much faster than ordinary tables due to their volatile nature.
            They can also be used to very quickly sort and perform duplicate
            removal on record sets when accessed in a purely sequential manner.
            </summary>
            <remarks>
            Introduced in Windows Vista;
            </remarks>
            <param name="sesid">The session to use.</param>
            <param name="temporarytable">
            Description of the temporary table to create on input. After a
            successful call, the structure contains the handle to the temporary
            table and column identifications.
            </param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetGetCurrentIndex(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.String@,System.Int32)">
            <summary>
            JetGetCurrentIndex function determines the name of the current
            index of a given cursor. This name is also used to later re-select
            that index as the current index using JetSetCurrentIndex. It can
            also be used to discover the properties of that index using
            JetGetTableIndexInfo.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to get the index name for.</param>
            <param name="indexName">Returns the name of the index.</param>
            <param name="maxNameLength">
            The maximum length of the index name. Index names are no more than 
            Api.MaxNameLength characters.
            </param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetIntersectIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_INDEXRANGE[],System.Int32,Microsoft.Isam.Esent.Interop.JET_RECORDLIST@,Microsoft.Isam.Esent.Interop.IntersectIndexesGrbit)">
            <summary>
            Computes the intersection between multiple sets of index entries from different secondary
            indices over the same table. This operation is useful for finding the set of records in a
            table that match two or more criteria that can be expressed using index ranges. 
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="ranges">
            An the index ranges to intersect. The tableids in the ranges
             must have index ranges set on them.
            </param>
            <param name="numRanges">
            The number of index ranges.
            </param>
            <param name="recordlist">
            Returns information about the temporary table containing the intersection results.
            </param>
            <param name="grbit">Intersection options.</param>
            <returns>An error if the call fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetEnumerateColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32@,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN[]@,Microsoft.Isam.Esent.Interop.JET_PFNREALLOC,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit)">
            <summary>
            Efficiently retrieves a set of columns and their values from the
            current record of a cursor or the copy buffer of that cursor. The
            columns and values retrieved can be restricted by a list of
            column IDs, itagSequence numbers, and other characteristics. This
            column retrieval API is unique in that it returns information in
            dynamically allocated memory that is obtained using a
            user-provided realloc compatible callback. This new flexibility
            permits the efficient retrieval of column data with specific
            characteristics (such as size and multiplicity) that are unknown
            to the caller. This eliminates the need for the use of the discovery
            modes of JetRetrieveColumn to determine those
            characteristics in order to setup a final call to
            JetRetrieveColumn that will successfully retrieve
            the desired data.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to retrieve data from.</param>
            <param name="numColumnids">The numbers of JET_ENUMCOLUMNIDS.</param>
            <param name="columnids">
            An optional array of column IDs, each with an optional array of itagSequence
            numbers to enumerate.
            </param>
            <param name="numColumnValues">
            Returns the number of column values retrieved.
            </param>
            <param name="columnValues">
            Returns the enumerated column values.
            </param>
            <param name="allocator">
            Callback used to allocate memory.
            </param>
            <param name="allocatorContext">
            Context for the allocation callback.
            </param>
            <param name="maxDataSize">
            Sets a cap on the amount of data to return from a long text or long
            binary column. This parameter can be used to prevent the enumeration
            of an extremely large column value.
            </param>
            <param name="grbit">Retrieve options.</param>
            <returns>A warning, error or success.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetSetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN*,System.Int32)">
            <summary>
            Allows an application to set multiple column values in a single
            operation. An array of <see cref="T:Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN"/> structures is
            used to describe the set of column values to be set, and to describe
            input buffers for each column value to be set.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to set the columns on.</param>
            <param name="setcolumns">
            An array of <see cref="T:Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN"/> structures describing the
            data to set.
            </param>
            <param name="numColumns">
            Number of entries in the setcolumns parameter.
            </param>
            <returns>An error code or warning.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetEscrowUpdate(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID,System.Byte[],System.Int32,System.Byte[],System.Int32,System.Int32@,Microsoft.Isam.Esent.Interop.EscrowUpdateGrbit)">
            <summary>
            Performs an atomic addition operation on one column. This function allows
            multiple sessions to update the same record concurrently without conflicts.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to update.</param>
            <param name="columnid">
            The column to update. This must be an escrow updatable column.
            </param>
            <param name="delta">The buffer containing the addend.</param>
            <param name="deltaSize">The size of the addend.</param>
            <param name="previousValue">
            An output buffer that will recieve the current value of the column. This buffer
            can be null.
            </param>
            <param name="previousValueLength">The size of the previousValue buffer.</param>
            <param name="actualPreviousValueLength">Returns the actual size of the previousValue.</param>
            <param name="grbit">Escrow update options.</param>
            <returns>An error code if the operation fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.JetIdle(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.IdleGrbit)">
            <summary>
            Performs idle cleanup tasks or checks the version store status in ESE.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="grbit">A combination of JetIdleGrbit flags.</param>
            <returns>An error code if the operation fails.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.ConvertEnumColumnids(Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32,Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMNID*)">
            <summary>
            Convert managed JET_ENUMCOLUMNID objects to NATIVE_ENUMCOLUMNID
            structures.
            </summary>
            <param name="columnids">The columnids to convert.</param>
            <param name="numColumnids">The number of columnids to convert.</param>
            <param name="nativecolumnids">The array to store the converted columnids.</param>
            <returns>The total number of tag entries in the converted structures.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.ConvertEnumColumnidTags(Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32,Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMNID*,System.UInt32*)">
            <summary>
            Convert managed rgtagSequence to unmanaged rgtagSequence.
            </summary>
            <param name="columnids">The columnids to convert.</param>
            <param name="numColumnids">The number of columnids to covert.</param>
            <param name="nativecolumnids">The unmanaged columnids to add the tags to.</param>
            <param name="tags">
            Memory to use for converted rgtagSequence. This should be large enough to
            hold all columnids.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.ConvertEnumerateColumnsResult(Microsoft.Isam.Esent.Interop.JET_PFNREALLOC,System.IntPtr,System.UInt32,Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN*,System.Int32@,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN[]@)">
            <summary>
            Convert the native (unmanaged) results of JetEnumerateColumns to
            managed objects. This uses the allocator callback to free some
            memory as the data is converted.
            </summary>
            <param name="allocator">The allocator callback used.</param>
            <param name="allocatorContext">The allocator callback context.</param>
            <param name="cEnumColumn">Number of NATIVE_ENUMCOLUMN structures returned.</param>
            <param name="nativeenumcolumns">NATIVE_ENUMCOLUMN structures.</param>
            <param name="numColumnValues">Returns the number of converted JET_ENUMCOLUMN objects.</param>
            <param name="columnValues">Returns the convertd column values.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.GetNativecolumndefs(Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],System.Int32)">
            <summary>
            Make an array of native columndefs from JET_COLUMNDEFs.
            </summary>
            <param name="columns">Columndefs to convert.</param>
            <param name="numColumns">Number of columndefs to convert.</param>
            <returns>An array of native columndefs.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.SetColumnids(Microsoft.Isam.Esent.Interop.JET_COLUMNDEF[],Microsoft.Isam.Esent.Interop.JET_COLUMNID[],System.UInt32[],System.Int32)">
            <summary>
            Set managed columnids from unmanaged columnids. This also sets the columnids
            in the columndefs.
            </summary>
            <param name="columns">The column definitions.</param>
            <param name="columnids">The columnids to set.</param>
            <param name="nativecolumnids">The native columnids.</param>
            <param name="numColumns">The number of columnids to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.CreateIndexes(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_INDEXCREATE[],System.Int32)">
            <summary>
            Creates indexes over data in an ESE database.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to create the index on.</param>
            <param name="indexcreates">Array of objects describing the indexes to be created.</param>
            <param name="numIndexCreates">Number of index description objects.</param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.CreateIndexes2(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_INDEXCREATE[],System.Int32)">
            <summary>
            Creates indexes over data in an ESE database.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The table to create the index on.</param>
            <param name="indexcreates">Array of objects describing the indexes to be created.</param>
            <param name="numIndexCreates">Number of index description objects.</param>
            <returns>An error code.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.DetermineCapabilities">
            <summary>
            Calculates the capabilities of the current Esent version.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.GetVersionFromEsent">
            <summary>
            Create an instance and get the current version of Esent.
            </summary>
            <returns>The current version of Esent.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.CheckSupportsVistaFeatures">
            <summary>
            Check that ESENT supports Vista features. Throws an exception if Vista features
            aren't supported.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.CheckDataSize``1(System.Collections.Generic.ICollection{``0},System.Int32,System.String)">
            <summary>
            Make sure the data and dataSize arguments match.
            </summary>
            <param name="data">The data buffer.</param>
            <param name="dataSize">The size of the data.</param>
            <param name="argumentName">The name of the size argument.</param>
            <typeparam name="T">The type of the data.</typeparam>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.CheckNotNull(System.Object,System.String)">
            <summary>
            Make sure the given object isn't null. If it is
            then throw an ArgumentNullException.
            </summary>
            <param name="o">The object to check.</param>
            <param name="paramName">The name of the parameter.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.CheckNotNegative(System.Int32,System.String)">
            <summary>
            Make sure the given integer isn't negative. If it is
            then throw an ArgumentOutOfRangeException.
            </summary>
            <param name="i">The integer to check.</param>
            <param name="paramName">The name of the parameter.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.ThrowUnsupportedApiException(System.String)">
            <summary>
            Used when an unsupported API method is called. This 
            logs an error and throws an InvalidOperationException.
            </summary>
            <param name="method">The name of the method.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.TraceFunctionCall(System.String)">
            <summary>
            Trace a call to an ESENT function.
            </summary>
            <param name="function">The name of the function being called.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.JetApi.Err(System.Int32)">
            <summary>
            Can be used to trap ESENT errors.
            </summary>
            <param name="err">The error being returned.</param>
            <returns>The error.</returns>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_COLUMNDEF">
            <summary>
            The native version of the JET_COLUMNDEF structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_COLUMNDEF">
            <summary>
            Describes a column in a table of an ESENT database.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNDEF.GetNativeColumndef">
            <summary>
            Returns the unmanaged columndef that represents this managed class.
            </summary>
            <returns>A native (interop) version of the JET_COLUMNDEF.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNDEF.SetFromNativeColumndef(Microsoft.Isam.Esent.Interop.NATIVE_COLUMNDEF)">
            <summary>
            Sets the fields of the object from a native JET_COLUMNDEF struct.
            </summary>
            <param name="value">
            The native columndef to set the values from.
            </param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNDEF.coltyp">
            <summary>
            Gets or sets type of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNDEF.cp">
            <summary>
            Gets or sets code page of the column. This is only meaningful for columns of type
            JET_coltyp.Text and JET_coltyp.LongText.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNDEF.cbMax">
            <summary>
            Gets or sets the maximum length of the column. This is only meaningful for columns of
            type JET_coltyp.Text, JET_coltyp.LongText, JET_coltyp.Binary and
            JET_coltyp.LongBinary.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNDEF.grbit">
            <summary>
            Gets or sets the column options.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNDEF.columnid">
            <summary>
            Gets the columnid of the column.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EsentVersion">
            <summary>
            Gives information about the version of esent being used.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsServer2003Features">
            <summary>
            Gets a value indicating whether the current version of esent
            supports features available in the Windows Server 2003 version of
            esent.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsVistaFeatures">
            <summary>
            Gets a value indicating whether the current version of esent
            supports features available in the Windows Vista version of
            esent.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsWindows7Features">
            <summary>
            Gets a value indicating whether the current version of esent
            supports features available in the Windows 7 version of
            esent.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsUnicodePaths">
            <summary>
            Gets a value indicating whether the current version of esent
            can use non-ASCII paths to access databases.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.SupportsLargeKeys">
            <summary>
            Gets a value indicating whether large (&gt; 255 byte) keys are supported.
            The key size for an index can be specified in the <see cref="T:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE"/>
            object.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentVersion.Capabilities">
            <summary>
            Gets a description of the current Esent capabilities.
            </summary>
            <remarks>
            We allow this to be set separately so that capabilities can
            be downgraded for testing.
            </remarks>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_RECORDLIST">
            <summary>
            The native version of the JET_RECORDLIST structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_RECORDLIST">
            <summary>
            Information about a temporary table containing information
            about all indexes for a given table.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_RECORDLIST.SetFromNativeRecordlist(Microsoft.Isam.Esent.Interop.NATIVE_RECORDLIST)">
            <summary>
            Sets the fields of the object from a native JET_RECORDLIST struct.
            </summary>
            <param name="value">
            The native recordlist to set the values from.
            </param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_RECORDLIST.tableid">
            <summary>
            Gets tableid of the temporary table. This should be closed
            when the table is no longer needed.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_RECORDLIST.cRecords">
            <summary>
            Gets the number of records in the temporary table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_RECORDLIST.columnidBookmark">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the bookmark of the record.
            The column is of type JET_coltyp.Text.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Implementation.GCHandleCollection">
            <summary>
            A collection of GCHandles for pinned objects. The handles
            are freed when this object is disposed.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Implementation.GCHandleCollection.handles">
            <summary>
            The handles of the objects being pinned.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.GCHandleCollection.Dispose">
            <summary>
            Disposes of the object.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Implementation.GCHandleCollection.Add(System.Object)">
            <summary>
            Add an object to the handle collection. This automatically
            pins the object.
            </summary>
            <param name="value">The object to pin.</param>
            <returns>
            The address of the pinned object. This is valid until the
            GCHandleCollection is disposed.
            </returns>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EsentInvalidColumnException">
            <summary>
            Exception thrown when a column conversion fails.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentInvalidColumnException.#ctor">
            <summary>
            Initializes a new instance of the EsentInvalidColumnException class.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentInvalidColumnException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the EsentInvalidColumnException class. This constructor
            is used to deserialize a serialized exception.
            </summary>
            <param name="info">The data needed to deserialize the object.</param>
            <param name="context">The deserialization context.</param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentInvalidColumnException.Message">
            <summary>
            Gets a text message describing the exception.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.SystemParameters">
            <summary>
            This class provides static properties to set and get
            global ESENT system parameters.
            </summary>
            <summary>
            Constants for the ESENT API. These don't have to be looked up via
            system parameters.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SystemParameters.BaseNameLength">
            <summary>
            The length of the prefix used to name files used by the database
            engine.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SystemParameters.NameMost">
            <summary>
            Maximum size of a table/column/index name.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SystemParameters.ColumnMost">
            <summary>
            Maximum size for columns which are not JET_coltyp.LongBinary
            or JET_coltyp.LongText.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SystemParameters.ColumnsMost">
            <summary>
            Maximum number of columns allowed in a table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SystemParameters.ColumnsFixedMost">
            <summary>
            Maximum number of fixed columns allowed in a table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SystemParameters.ColumnsVarMost">
            <summary>
            Maximum number of variable-length columns allowed
            in a table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SystemParameters.ColumnsTaggedMost">
            <summary>
            Maximum number of tagged columns allowed in a table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.SystemParameters.PageTempDBSmallest">
            <summary>
            The number of pages that gives the smallest possible
            temporary database.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.SystemParameters.SetIntegerParameter(Microsoft.Isam.Esent.Interop.JET_param,System.Int32)">
            <summary>
            Set a system parameter which is an integer.
            </summary>
            <param name="param">The parameter to set.</param>
            <param name="value">The value to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.SystemParameters.GetIntegerParameter(Microsoft.Isam.Esent.Interop.JET_param)">
            <summary>
            Get a system parameter which is an integer.
            </summary>
            <param name="param">The parameter to get.</param>
            <returns>The value of the parameter.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.SystemParameters.SetBoolParameter(Microsoft.Isam.Esent.Interop.JET_param,System.Boolean)">
            <summary>
            Set a system parameter which is a boolean.
            </summary>
            <param name="param">The parameter to set.</param>
            <param name="value">The value to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.SystemParameters.GetBoolParameter(Microsoft.Isam.Esent.Interop.JET_param)">
            <summary>
            Get a system parameter which is a boolean.
            </summary>
            <param name="param">The parameter to get.</param>
            <returns>The value of the parameter.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.CacheSizeMax">
            <summary>
            Gets or sets the maximum size of the database page cache. The size
            is in database pages. If this parameter is left to its default value, then the
            maximum size of the cache will be set to the size of physical memory when JetInit
            is called.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.CacheSize">
            <summary>
            Gets or sets the size of the database cache in pages. By default the
            database cache will automatically tune its size, setting this property
            to a non-zero value will cause the cache to adjust itself to the target
            size.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.DatabasePageSize">
            <summary>
            Gets or sets the size of the database pages, in bytes.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.CacheSizeMin">
            <summary>
            Gets or sets the minimum size of the database page cache, in database pages.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.MaxInstances">
            <summary>
            Gets or sets the maximum number of instances that can be created.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.KeyMost">
            <summary>
            Gets the maximum key size. This depends on the Esent version and database
            page size.
            <para>
            Supported on Windows Vista and up. Ignored on Windows XP and
            Windows Server 2003.
            </para>
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.ColumnsKeyMost">
            <summary>
            Gets the maximum number of components in a sort or index key.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.BookmarkMost">
            <summary>
            Gets the maximum size of a bookmark. <seealso cref="M:Microsoft.Isam.Esent.Interop.Api.JetGetBookmark(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Byte[],System.Int32,System.Int32@)"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.LVChunkSizeMost">
            <summary>
            Gets the lv chunks size. This depends on the database page size.
            <para>
            Supported on Windows 7 and up. Ignored on Windows XP,
            Windows Server 2003, Windows Vista and Windows Server 2008.
            </para>
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.Configuration">
            <summary>
            Gets or sets a value specifying the default values for the
            entire set of system parameters. When this parameter is set to
            a specific configuration, all system parameter values are reset
            to their default values for that configuration. If the
            configuration is set for a specific instance then global system
            parameters will not be reset to their default values.
            Small Configuration (0): The database engine is optimized for memory use. 
            Legacy Configuration (1): The database engine has its traditional defaults.
            <para>
            Supported on Windows Vista and up. Ignored on Windows XP and
            Windows Server 2003.
            </para>
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.SystemParameters.EnableAdvanced">
            <summary>
            Gets or sets a value indicating whether the database engine accepts
            or rejects changes to a subset of the system parameters. This
            parameter is used in conjunction with <see cref="P:Microsoft.Isam.Esent.Interop.SystemParameters.Configuration"/> to
            prevent some system parameters from being set away from the selected
            configuration's defaults.
            <para>
            Supported on Windows Vista and up. Ignored on Windows XP and
            Windows Server 2003.
            </para>
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EsentErrorException">
            <summary>
            Base class for ESENT error exceptions.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentErrorException.#ctor(Microsoft.Isam.Esent.Interop.JET_err)">
            <summary>
            Initializes a new instance of the EsentErrorException class.
            </summary>
            <param name="err">The error code of the exception.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentErrorException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the EsentErrorException class. This constructor
            is used to deserialize a serialized exception.
            </summary>
            <param name="info">The data needed to deserialize the object.</param>
            <param name="context">The deserialization context.</param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentErrorException.Message">
            <summary>
            Gets a text message describing the error.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentErrorException.ErrorDescription">
            <summary>
            Gets a text description of the error.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentErrorException.Error">
            <summary>
            Gets the underlying Esent error for this exception.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.IndexInfo">
            <summary>
            Information about one esent index. This is not an interop
            class, but is used by the meta-data helper methods.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexInfo.Name">
            <summary>
            Gets the name of the index.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexInfo.CultureInfo">
            <summary>
            Gets the CultureInfo the index is sorted by.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexInfo.CompareOptions">
            <summary>
            Gets the CompareOptions for the index.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexInfo.IndexSegments">
            <summary>
            Gets the segments of the index.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexInfo.Grbit">
            <summary>
            Gets the index options.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_CONDITIONALCOLUMN">
            <summary>
            The native version of the JET_CONDITIONALCOLUMN structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_CONDITIONALCOLUMN">
            <summary>
            Defines how conditional indexing is performed for a given index. A
            conditional index contains an index entry for only those rows that
            match the specified condition. However, the conditional column is not
            part of the index's key, it only controls the presence of the index entry.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_CONDITIONALCOLUMN.GetNativeConditionalColumn">
            <summary>
            Gets the NATIVE_CONDITIONALCOLUMN version of this object.
            </summary>
            <returns>A NATIVE_CONDITIONALCOLUMN for this object.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_CONDITIONALCOLUMN.szColumnName">
            <summary>
            Gets or sets the name of the conditional column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_CONDITIONALCOLUMN.grbit">
            <summary>
            Gets or sets the options for the conditional index.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN">
            <summary>
            Native (unmanaged) version of the JET_ENUMCOLUMN structure.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.columnid">
            <summary>
            The columnid that was enumerated.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.err">
            <summary>
            The column status code from the enumeration of the column.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.cbData">
            <summary>
            The size of the value that was enumerated for the column.
            This member is only used if <see cref="F:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.err"/> is equal to
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>.
            </summary>
            <remarks>
            The unmanaged JET_ENUMCOLUMN structure is a union so this
            is aliased with cEnumColumnValue.
            </remarks>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.pvData">
            <summary>
            The the value that was enumerated for the column.
            This member is only used if <see cref="F:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.err"/> is equal to
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>.
            </summary>
            <remarks>
            The unmanaged JET_ENUMCOLUMN structure is a union so this
            is aliased with rgEnumColumnValue.
            </remarks>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.cEnumColumnValue">
            <summary>
            Gets or sets the number of entries in rgEnumColumnValue.
            This member is only used if <see cref="F:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.err"/> is not
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>.
            </summary>
            <remarks>
            The unmanaged JET_ENUMCOLUMN structure is a union so this
            property uses cbData as its backing storage.
            </remarks>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.rgEnumColumnValue">
            <summary>
            Gets or sets an array of column values.
            This member is only used if <see cref="F:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN.err"/> is not
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>.
            </summary>
            <remarks>
            The unmanaged JET_ENUMCOLUMN structure is a union so this
            property uses pvData as its backing storage.
            </remarks>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN">
            <summary>
            Enumerates the column values of a record using the JetEnumerateColumns
            function. JetEnumerateColumns returns an array of JET_ENUMCOLUMNVALUE
            structures. The array is returned in memory that was allocated using
            the callback that was supplied to that function.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.SetFromNativeEnumColumn(Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMN)">
            <summary>
            Sets the fields of the object from a native JET_ENUMCOLUMN struct.
            </summary>
            <param name="value">
            The native enumcolumn to set the values from.
            </param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.columnid">
            <summary>
            Gets the columnid ID that was enumerated.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.err">
            <summary>
            Gets the column status code that results from the enumeration.
            </summary>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.cEnumColumnValue">
            <summary>
            Gets the number of column values enumerated for the column.
            This member is only used if <see cref="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.err"/> is not
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.rgEnumColumnValue">
            <summary>
            Gets the enumerated column values for the column.
            This member is only used if <see cref="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.err"/> is not
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.cbData">
            <summary>
            Gets the size of the value that was enumerated for the column.
            This member is only used if <see cref="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.err"/> is equal to
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.pvData">
            <summary>
            Gets the the value that was enumerated for the column.
            This member is only used if <see cref="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN.err"/> is equal to
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSingleValue"/>.
            This points to memory allocated with the 
            <see cref="T:Microsoft.Isam.Esent.Interop.JET_PFNREALLOC"/> allocator callback passed to
            <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetEnumerateColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32@,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN[]@,Microsoft.Isam.Esent.Interop.JET_PFNREALLOC,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit)"/>. Remember to
            release the memory when finished.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_INSTANCE">
            <summary>
            A JET_INSTANCE contains a handle to the instance of the database to use for calls to the JET Api.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_INSTANCE.Value">
            <summary>
            The native value.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INSTANCE.op_Equality(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
            <summary>
            Determines whether two specified instances of JET_INSTANCE
            are equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INSTANCE.op_Inequality(Microsoft.Isam.Esent.Interop.JET_INSTANCE,Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
            <summary>
            Determines whether two specified instances of JET_INSTANCE
            are not equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are not equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INSTANCE.ToString">
            <summary>
            Generate a string representation of the structure.
            </summary>
            <returns>The structure as a string.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INSTANCE.Equals(System.Object)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="obj">An object to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INSTANCE.GetHashCode">
            <summary>
            Returns the hash code for this instance.
            </summary>
            <returns>The hash code for this instance.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INSTANCE.Equals(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="other">An instance to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INSTANCE.Nil">
            <summary>
            Gets a null JET_INSTANCE.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_SESID">
            <summary>
            A JET_SESID contains a handle to the session to use for calls to the JET Api.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_SESID.Value">
            <summary>
            The native value.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SESID.op_Equality(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_SESID)">
            <summary>
            Determines whether two specified instances of JET_SESID
            are equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SESID.op_Inequality(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_SESID)">
            <summary>
            Determines whether two specified instances of JET_SESID
            are not equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are not equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SESID.ToString">
            <summary>
            Generate a string representation of the structure.
            </summary>
            <returns>The structure as a string.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SESID.Equals(System.Object)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="obj">An object to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SESID.GetHashCode">
            <summary>
            Returns the hash code for this instance.
            </summary>
            <returns>The hash code for this instance.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SESID.Equals(Microsoft.Isam.Esent.Interop.JET_SESID)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="other">An instance to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SESID.Nil">
            <summary>
            Gets a null JET_SESID.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_TABLEID">
            <summary>
            A JET_TABLEID contains a handle to the database cursor to use for a call to the JET Api.
            A cursor can only be used with the session that was used to open that cursor.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_TABLEID.Value">
            <summary>
            The native value.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_TABLEID.op_Equality(Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Determines whether two specified instances of JET_TABLEID
            are equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_TABLEID.op_Inequality(Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Determines whether two specified instances of JET_TABLEID
            are not equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are not equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_TABLEID.ToString">
            <summary>
            Generate a string representation of the structure.
            </summary>
            <returns>The structure as a string.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_TABLEID.Equals(System.Object)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="obj">An object to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_TABLEID.GetHashCode">
            <summary>
            Returns the hash code for this instance.
            </summary>
            <returns>The hash code for this instance.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_TABLEID.Equals(Microsoft.Isam.Esent.Interop.JET_TABLEID)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="other">An instance to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_TABLEID.Nil">
            <summary>
            Gets a null JET_TABLEID.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_DBID">
            <summary>
            A JET_DBID contains the handle to the database. A database handle is used to manage the
            schema of a database. It can also be used to manage the tables inside of that database.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_DBID.Value">
            <summary>
            The native value.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_DBID.op_Equality(Microsoft.Isam.Esent.Interop.JET_DBID,Microsoft.Isam.Esent.Interop.JET_DBID)">
            <summary>
            Determines whether two specified instances of JET_DBID
            are equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_DBID.op_Inequality(Microsoft.Isam.Esent.Interop.JET_DBID,Microsoft.Isam.Esent.Interop.JET_DBID)">
            <summary>
            Determines whether two specified instances of JET_DBID
            are not equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are not equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_DBID.ToString">
            <summary>
            Generate a string representation of the structure.
            </summary>
            <returns>The structure as a string.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_DBID.Equals(System.Object)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="obj">An object to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_DBID.GetHashCode">
            <summary>
            Returns the hash code for this instance.
            </summary>
            <returns>The hash code for this instance.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_DBID.Equals(Microsoft.Isam.Esent.Interop.JET_DBID)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="other">An instance to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_DBID.Nil">
            <summary>
            Gets a null JET_DBID.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_COLUMNID">
            <summary>
            A JET_COLUMNID identifies a column within a table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_COLUMNID.Value">
            <summary>
            The native value.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNID.op_Equality(Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Determines whether two specified instances of JET_COLUMNID
            are equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNID.op_Inequality(Microsoft.Isam.Esent.Interop.JET_COLUMNID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Determines whether two specified instances of JET_COLUMNID
            are not equal.
            </summary>
            <param name="lhs">The first instance to compare.</param>
            <param name="rhs">The second instance to compare.</param>
            <returns>True if the two instances are not equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNID.ToString">
            <summary>
            Generate a string representation of the structure.
            </summary>
            <returns>The structure as a string.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNID.Equals(System.Object)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="obj">An object to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNID.GetHashCode">
            <summary>
            Returns the hash code for this instance.
            </summary>
            <returns>The hash code for this instance.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNID.Equals(Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Returns a value indicating whether this instance is equal
            to another instance.
            </summary>
            <param name="other">An instance to compare with this instance.</param>
            <returns>True if the two instances are equal.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNID.Nil">
            <summary>
            Gets a null JET_COLUMNID.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_ObjInfo">
            <summary>
            Info levels for retrieving object info.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_ObjInfo.ListNoStats">
            <summary>
            Retrieve a JET_OBJINFOLIST containing information
            about all object in the table.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_PFNREALLOC">
            <summary>
            Callback used by JetEnumerateColumns to allocate memory for its output buffers.
            </summary>
            <param name="context">Context given to JetEnumerateColumns.</param>
            <param name="memory">
            If non-zero, a pointer to a memory block previously allocated by this callback.
            </param>
            <param name="requestedSize">
            The new size of the memory block (in bytes). If this is 0 and a memory block is
            specified, that memory block will be freed.
            </param>
            <returns>
            A pointer to newly allocated memory. If memory could not be allocated then
            <see cref="F:System.IntPtr.Zero"/> should be returned.
            </returns>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Table">
            <summary>
            A class that encapsulates a JET_TABLEID in a disposable object.
            This opens an existing table. To create a table use the 
            JetCreateTable method.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Table.sesid">
            <summary>
            The session used to open the table.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Table.tableid">
            <summary>
            The underlying JET_TABLEID.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Table.name">
            <summary>
            The name of the table.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Table.#ctor(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_DBID,System.String,Microsoft.Isam.Esent.Interop.OpenTableGrbit)">
            <summary>
            Initializes a new instance of the Table class. The table is
            opened from the given database.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="dbid">The database to open the table in.</param>
            <param name="name">The name of the table.</param>
            <param name="grbit">JetOpenTable options.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Table.op_Implicit(Microsoft.Isam.Esent.Interop.Table)~Microsoft.Isam.Esent.Interop.JET_TABLEID">
            <summary>
            Implicit conversion operator from a Table to a JET_TABLEID. This
            allows a Table to be used with APIs which expect a JET_TABLEID.
            </summary>
            <param name="table">The table to convert.</param>
            <returns>The JET_TABLEID of the table.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Table.Close">
            <summary>
            Close the table.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Table.ReleaseResource">
            <summary>
            Free the underlying JET_TABLEID.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Table.Name">
            <summary>
            Gets the name of this table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Table.JetTableid">
            <summary>
            Gets the JET_TABLEID that this table contains.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_INDEXCREATE">
            <summary>
            The native version of the JET_INDEXCREATE structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_INDEXCREATE2">
            <summary>
            The native version of the JET_INDEXCREATE structure. This version includes the cbKeyMost
            member, which is only valid on Windows Vista and above.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE">
            <summary>
            Contains the information needed to create an index over data in an ESE database.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.Unicode">
            <summary>
            Option used to indicate that the pidxUnicode member of a NATIVE_INDEXCREATE
            structure points to a NATIVE_UNICODEINDEX.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.CheckMembersAreValid">
            <summary>
            Check this object to make sure its parameters are valid.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.GetNativeIndexcreate">
            <summary>
            Gets the native (interop) version of this object.
            </summary>
            <returns>The native (interop) version of this object.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.GetNativeIndexcreate2">
            <summary>
            Gets the native (interop) version of this object.
            </summary>
            <returns>The native (interop) version of this object.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.szIndexName">
            <summary>
            Gets or sets the name of the index to create. 
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.szKey">
            <summary>
            Gets or sets the description of the index key. This is a double 
            null-terminated string of null-delimited tokens. Each token is
            of the form [direction-specifier][column-name], where
            direction-specification is either "+" or "-". for example, a
            szKey of "+abc\0-def\0+ghi\0" will index over the three columns
            "abc" (in ascending order), "def" (in descending order), and "ghi"
            (in ascending order).
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.cbKey">
            <summary>
            Gets or sets the length, in characters, of szKey including the two terminating nulls.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.grbit">
            <summary>
            Gets or sets index creation options.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.ulDensity">
            <summary>
            Gets or sets the density of the index.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.pidxUnicode">
            <summary>
            Gets or sets the optional unicode comparison options.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.cbVarSegMac">
            <summary>
            Gets or sets the maximum length, in bytes, of each column to store in the index.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.rgconditionalcolumn">
            <summary>
            Gets or sets the optional conditional columns.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.cConditionalColumn">
            <summary>
            Gets or sets the number of conditional columns.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.err">
            <summary>
            Gets or sets the error code from creating this index.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE.cbKeyMost">
            <summary>
            Gets or sets the maximum allowable size, in bytes, for keys in the index.
            The minimum supported maximum key size is JET_cbKeyMostMin (255) which
            is the legacy maximum key size. The maximum key size is dependent on
            the database page size <see cref="F:Microsoft.Isam.Esent.Interop.JET_param.DatabasePageSize"/>. The
            maximum key size can be retrieved with <see cref="P:Microsoft.Isam.Esent.Interop.SystemParameters.KeyMost"/>.
            <para>
            This parameter is ignored on Windows XP and Windows Server 2003.
            </para>
            <para>
            Unlike the unmanaged API, <see cref="F:Microsoft.Isam.Esent.Interop.Vista.VistaGrbits.IndexKeyMost"/>
            (JET_bitIndexKeyMost) is not needed, it will be added automatically.
            </para>
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.EsentStopwatch">
            <summary>
            Provides a set of methods and properties that you can use to measure
            ESENT work statistics for a thread. If the current version of ESENT
            doesn't support <see cref="M:Microsoft.Isam.Esent.Interop.Vista.VistaApi.JetGetThreadStats(Microsoft.Isam.Esent.Interop.Vista.JET_THREADSTATS@)"/> then all 
            ESENT statistics will be 0.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EsentStopwatch.stopwatch">
            <summary>
            Used to measure how long statistics are collected for.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.EsentStopwatch.statsAtStart">
            <summary>
            The stats at the start of our collection.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentStopwatch.StartNew">
            <summary>
            Initializes a new EsentStopwatch instance and starts
            measuring elapsed time. 
            </summary>
            <returns>A new, running EsentStopwatch.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentStopwatch.Start">
            <summary>
            Starts measuring ESENT work.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentStopwatch.Stop">
            <summary>
            Stops measuring ESENT work.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.EsentStopwatch.Reset">
            <summary>
            Stops time interval measurement and resets the thread statistics.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentStopwatch.IsRunning">
            <summary>
            Gets a value indicating whether the EsentStopwatch timer is running. 
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentStopwatch.ThreadStats">
            <summary>
            Gets the total ESENT work stats measured by the current instance.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.EsentStopwatch.Elapsed">
            <summary>
            Gets the total elapsed time measured by the current instance.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMNID">
            <summary>
            The native (unmanaged) version of the
            <see cref="T:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID"/> class.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID">
            <summary>
            Enumerates a specific set of columns and, optionally, a specific set
            of multiple values for those columns when the JetEnumerateColumns
            function is used. JetEnumerateColumns optionally takes an array of
            JET_ENUMCOLUMNID structures.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID.CheckDataSize">
            <summary>
            Check to see if ctagSequence is negative or greater than the length
            of rgtagSequence.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID.GetNativeEnumColumnid">
            <summary>
            Gets the native (interop) version of this object.
            </summary>
            <returns>A NATIVE_ENUMCOLUMNID representing this object.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID.columnid">
            <summary>
            Gets or sets the columnid ID to enumerate.
            </summary>
            <remarks>
            If the column ID is 0 (zero) then the enumeration of this column is
            skipped and a corresponding slot in the output array of JET_ENUMCOLUMN
            structures will be generated with a column state of JET_wrnColumnSkipped.
            </remarks>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID.ctagSequence">
            <summary>
            Gets or sets the count of column values (by one-based index) to
            enumerate for the specified column ID. If ctagSequence is 0 (zero) then
            rgtagSequence is ignored and all column values for the specified column
            ID will be enumerated.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID.rgtagSequence">
            <summary>
            Gets or sets the array of one-based indices into the array of column values for a
            given column. A single element is an itagSequence which is defined in
            JET_RETRIEVECOLUMN. An itagSequence of 0 (zero) means "skip". An
            itagSequence of 1 means return the first column value of the column,
            2 means the second, and so on.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Conversions">
            <summary>
            Provide methods to convert data and flags between 
            Win32 and the .NET Framework.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.compareOptionsToLcmapFlags">
            <summary>
            Maps a CompareOption enumeration to the corresponding LCMapString flag.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.lcmapFlagsToCompareOptions">
            <summary>
            Maps an LCMapString flag to the corresponding CompareOption enumeration.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Conversions.#cctor">
            <summary>
            Initializes static members of the Conversions class. This sets up the
            conversion mapping dictionaries.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Conversions.CompareOptionsFromLCMapFlags(System.UInt32)">
            <summary>
            Given flags for LCMapFlags, turn them into compare options. Unknown options 
            are ignored.
            </summary>
            <param name="lcmapFlags">LCMapString flags.</param>
            <returns>CompareOptions describing the (known) flags.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Conversions.LCMapFlagsFromCompareOptions(System.Globalization.CompareOptions)">
            <summary>
            Give CompareOptions, turn them into flags from LCMapString. Unknown options are ignored.
            </summary>
            <param name="compareOptions">The options to convert.</param>
            <returns>The LCMapString flags that match the compare options. Unsupported options are ignored.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Conversions.InvertDictionary``2(System.Collections.Generic.IDictionary{``0,``1})">
            <summary>
            Given a Key=>Value dictionary create an inverted dictionary that maps Value=>Key.
            </summary>
            <typeparam name="TValue">The new value type (the key of the current dictionary).</typeparam>
            <typeparam name="TKey">The new key type (the value if the current dictionary).</typeparam>
            <param name="dict">The dictionary to invert.</param>
            <returns>An inverted dictionary.</returns>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Conversions.NativeMethods">
            <summary>
            This class contains the unmanaged constants used in the conversion.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.NativeMethods.NORM_IGNORECASE">
            <summary>
            Ignore case.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.NativeMethods.NORM_IGNORENONSPACE">
            <summary>
            Ignore nonspacing chars.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.NativeMethods.NORM_IGNORESYMBOLS">
            <summary>
            Ignore symbols.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.NativeMethods.NORM_IGNOREKANATYPE">
            <summary>
            Inore kanatype.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.NativeMethods.NORM_IGNOREWIDTH">
            <summary>
            Ignore width.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.NativeMethods.SORT_STRINGSORT">
            <summary>
            Treat punctuation the same as symbols.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Conversions.NativeMethods.LCMAP_SORTKEY">
            <summary>
            Produce a normalized wide-character sort key.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Vista.VistaColtyp">
            <summary>
            Column types that have been added to the Vista version of ESENT.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaColtyp.UnsignedLong">
            <summary>
            Unsigned 32-bit number.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaColtyp.LongLong">
            <summary>
            Signed 64-bit number.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaColtyp.GUID">
            <summary>
            16-byte GUID.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaColtyp.UnsignedShort">
            <summary>
            Unsigned 16-bit number.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NativeMethods">
            <summary>
            Native interop for functions in esent.dll.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.NativeMethods.EsentCharSet">
            <summary>
            The CharSet for the methods in the DLL.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.NativeMethods.EsentDll">
            <summary>
            The name of the DLL that the methods should be loaded from.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.NativeMethods.#cctor">
            <summary>
            Initializes static members of the NativeMethods class.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.NativeMethods.Encoding">
            <summary>
            Gets encoding to be used when converting data to/from byte arrays.
            This should match the CharSet above.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_SETINFO">
            <summary>
            The native version of the JET_SETINFO structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_SETINFO">
            <summary>
            Settings for JetSetColumn.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SETINFO.GetNativeSetinfo">
            <summary>
            Gets the NATIVE_SETINFO structure that represents the object.
            </summary>
            <returns>A NATIVE_SETINFO structure whose fields match the class.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETINFO.ibLongValue">
            <summary>
            Gets or sets offset to the first byte to be set in a column of type JET_coltypLongBinary or JET_coltypLongText.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETINFO.itagSequence">
            <summary>
            Gets or sets the sequence number of value in a multi-valued column to be set. The array of values is one-based.
            The first value is sequence 1, not 0 (zero). If the record column has only one value then 1 should be passed
            as the itagSequence if that value is being replaced. A value of 0 (zero) means to add a new column value instance
            to the end of the sequence of column values.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_Move">
            <summary>
            Offsets for JetMove.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_Move.First">
            <summary>
            Move the cursor to the first index entry.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_Move.Previous">
            <summary>
            Move to the previous index entry.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_Move.Next">
            <summary>
            Move to the next index entry.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_Move.Last">
            <summary>
            Move to the last index entry.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_COLUMNLIST">
            <summary>
            The native version of the JET_COLUMNLIST structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST">
            <summary>
            Information about a temporary table containing information
            about all columns for a given table.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.SetFromNativeColumnlist(Microsoft.Isam.Esent.Interop.NATIVE_COLUMNLIST)">
            <summary>
            Sets the fields of the object from a native JET_COLUMNLIST struct.
            </summary>
            <param name="value">
            The native columnlist to set the values from.
            </param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.tableid">
            <summary>
            Gets tableid of the temporary table. This should be closed
            when the table is no longer needed.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.cRecord">
            <summary>
            Gets the number of records in the temporary table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.columnidcolumnname">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the name of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.columnidcolumnid">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the id of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.columnidcoltyp">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the type of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.columnidCp">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the code page of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.columnidcbMax">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the maximum length of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.columnidgrbit">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the grbit of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_COLUMNLIST.columnidDefault">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the default value of the column.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Vista.VistaGrbits">
            <summary>
            Grbits that have been added to the Vista version of ESENT.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaGrbits.IndexCrossProduct">
            <summary>
            Specifying this flag for an index that has more than one key column
            that is a multi-valued column will result in an index entry being
            created for each result of a cross product of all the values in
            those key columns. Otherwise, the index would only have one entry
            for each multi-value in the most significant key column that is a
            multi-valued column and each of those index entries would use the
            first multi-value from any other key columns that are multi-valued columns.
            <para>
            For example, if you specified this flag for an index over column
            A that has the values "red" and "blue" and over column B that has
            the values "1" and "2" then the following index entries would be
            created: "red", "1"; "red", "2"; "blue", "1"; "blue", "2". Otherwise,
            the following index entries would be created: "red", "1"; "blue", "1".
            </para>
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaGrbits.IndexDisallowTruncation">
            <summary>
            Specifying this flag will cause any update to the index that would
            result in a truncated key to fail with <see cref="F:Microsoft.Isam.Esent.Interop.JET_err.KeyTruncated"/>.
            Otherwise, keys will be silently truncated.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaGrbits.IndexNestedTable">
            <summary>
            Index over multiple multi-valued columns but only with values of same itagSequence.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaGrbits.IndexKeyMost">
            <summary>
            Specifying this flag will cause the index to use the maximum key size
            specified in the cbKeyMost field in the structure. Otherwise, the
            index will use JET_cbKeyMost (255) as its maximum key size.
            </summary>
            <remarks>
            Set internally when the NATIVE_INDEXCREATE structure is generated.
            </remarks>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaGrbits.IndexUnicode">
            <summary>
            LCID field of JET_INDEXCREATE actually points to a JET_UNICODEINDEX
            struct to allow user-defined LCMapString() flags.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.InstanceParameters">
            <summary>
            This class provides properties to set and get system parameters
            on an ESENT instance.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.InstanceParameters.instance">
            <summary>
            The instance to set parameters on.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.InstanceParameters.sesid">
            <summary>
            The session to set parameters with.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.InstanceParameters.#ctor(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
            <summary>
            Initializes a new instance of the InstanceParameters class.
            </summary>
            <param name="instance">The instance to set parameters on.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.InstanceParameters.AddTrailingDirectorySeparator(System.String)">
            <summary>
            Add a trailing directory separator character to the string.
            </summary>
            <param name="dir">The directory.</param>
            <returns>The directory with a separator character added (if necesary).</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.InstanceParameters.SetStringParameter(Microsoft.Isam.Esent.Interop.JET_param,System.String)">
            <summary>
            Set a system parameter which is a string.
            </summary>
            <param name="param">The parameter to set.</param>
            <param name="value">The value to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.InstanceParameters.GetStringParameter(Microsoft.Isam.Esent.Interop.JET_param)">
            <summary>
            Get a system parameter which is a string.
            </summary>
            <param name="param">The parameter to get.</param>
            <returns>The value of the parameter.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.InstanceParameters.SetIntegerParameter(Microsoft.Isam.Esent.Interop.JET_param,System.Int32)">
            <summary>
            Set a system parameter which is an integer.
            </summary>
            <param name="param">The parameter to set.</param>
            <param name="value">The value to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.InstanceParameters.GetIntegerParameter(Microsoft.Isam.Esent.Interop.JET_param)">
            <summary>
            Get a system parameter which is an integer.
            </summary>
            <param name="param">The parameter to get.</param>
            <returns>The value of the parameter.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.InstanceParameters.SetBoolParameter(Microsoft.Isam.Esent.Interop.JET_param,System.Boolean)">
            <summary>
            Set a system parameter which is a boolean.
            </summary>
            <param name="param">The parameter to set.</param>
            <param name="value">The value to set.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.InstanceParameters.GetBoolParameter(Microsoft.Isam.Esent.Interop.JET_param)">
            <summary>
            Get a system parameter which is a boolean.
            </summary>
            <param name="param">The parameter to get.</param>
            <returns>The value of the parameter.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.SystemDirectory">
            <summary>
            Gets or sets the relative or absolute file system path of the
            folder that will contain the checkpoint file for the instance.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.TempDirectory">
            <summary>
            Gets or sets the relative or absolute file system path of
            the folder that will contain the temporary database for the instance.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.LogFileDirectory">
            <summary>
            Gets or sets the relative or absolute file system path of the
            folder that will contain the transaction logs for the instance.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.BaseName">
            <summary>
            Gets or sets the three letter prefix used for many of the files used by
            the database engine. For example, the checkpoint file is called EDB.CHK by
            default because EDB is the default base name.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.EventSource">
            <summary>
            Gets or sets an application specific string that will be added to
            any event log messages that are emitted by the database engine. This allows
            easy correlation of event log messages with the source application. By default
            the host application executable name will be used.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.MaxSessions">
            <summary>
            Gets or sets the number of sessions resources reserved for this instance.
            A session resource directly corresponds to a JET_SESID.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.MaxOpenTables">
            <summary>
            Gets or sets the number of B+ Tree resources reserved for this instance.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.MaxCursors">
            <summary>
            Gets or sets the number of cursor resources reserved for this instance.
            A cursor resource directly corresponds to a JET_TABLEID.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.MaxVerPages">
            <summary>
            Gets or sets the maximum number of version store pages reserved
            for this instance.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.MaxTemporaryTables">
            <summary>
            Gets or sets the number of temporary table resources for use
            by an instance. This setting will affect how many temporary tables can be used at
            the same time. If this system parameter is set to zero then no temporary database
            will be created and any activity that requires use of the temporary database will
            fail. This setting can be useful to avoid the I/O required to create the temporary
            database if it is known that it will not be used.
            </summary>
            <remarks>
            The use of a temporary table also requires a cursor resource.
            </remarks>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.LogFileSize">
            <summary>
            Gets or sets the size of the transaction log files. This parameter
            should be set in units of 1024 bytes (e.g. a setting of 2048 will
            give 2MB logfiles).
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.LogBuffers">
            <summary>
            Gets or sets the amount of memory used to cache log records
            before they are written to the transaction log file. The unit for this
            parameter is the sector size of the volume that holds the transaction log files.
            The sector size is almost always 512 bytes, so it is safe to assume that size
            for the unit. This parameter has an impact on performance. When the database
            engine is under heavy update load, this buffer can become full very rapidly.
            A larger cache size for the transaction log file is critical for good update
            performance under such a high load condition. The default is known to be too small
            for this case.
            Do not set this parameter to a number of buffers that is larger (in bytes) than
            half the size of a transaction log file.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.CircularLog">
            <summary>
            Gets or sets a value indicating whether circular logging is on.
            When circular logging is off, all transaction log files that are generated
            are retained on disk until they are no longer needed because a full backup of the
            database has been performed. When circular logging is on, only transaction log files
            that are younger than the current checkpoint are retained on disk. The benefit of
            this mode is that backups are not required to retire old transaction log files. 
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.PageTempDBMin">
            <summary>
            Gets or sets the initial size of the temporary database. The size is in
            database pages. A size of zero indicates that the default size of an ordinary
            database should be used. It is often desirable for small applications to configure
            the temporary database to be as small as possible. Setting this parameter to
            <see cref="F:Microsoft.Isam.Esent.Interop.SystemParameters.PageTempDBSmallest"/> will achieve the smallest
            temporary database possible.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.CheckpointDepthMax">
            <summary>
            Gets or sets the threshold in bytes for about how many transaction log
            files will need to be replayed after a crash. If circular logging is enabled using
            CircularLog then this parameter will also control the approximate amount
            of transaction log files that will be retained on disk.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.Recovery">
            <summary>
            Gets or sets a value indicating whether crash recovery is on.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.EnableIndexChecking">
            <summary>
            Gets or sets a value indicating whether JetAttachDatabase will check for
            indexes that were build using an older version of the NLS library in the
            operating system.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.EventSourceKey">
            <summary>
            Gets or sets the name of the event log the database engine uses for its event log
            messages. By default, all event log messages will go to the Application event log. If the registry
            key name for another event log is configured then the event log messages will go there instead.
            </summary>  
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.NoInformationEvent">
            <summary>
            Gets or sets a value indicating whether informational event 
            log messages that would ordinarily be generated by the
            database engine will be suppressed.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.CreatePathIfNotExist">
            <summary>
            Gets or sets a value indicating whether ESENT will silently create folders
            that are missing in its filesystem paths.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.CachedClosedTables">
            <summary>
            Gets or sets a value giving the number of B+ Tree resources cached by
            the instance after the tables they represent have been closed by
            the application. Large values for this parameter will cause the
            database engine to use more memory but will increase the speed
            with which a large number of tables can be opened randomly by
            the application. This is useful for applications that have a
            schema with a very large number of tables.
            <para>
            Supported on Windows Vista and up. Ignored on Windows XP and
            Windows Server 2003.
            </para>
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.InstanceParameters.WaypointLatency">
            <summary>
            Gets or sets a the number of logs that esent will defer database
            flushes for. This can be used to increase database recoverability if
            failures cause logfiles to be lost.
            <para>
            Supported on Windows 7 and up. Ignored on Windows XP,
            Windows Server 2003, Windows Vista and Windows Server 2008.
            </para>
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_objtyp">
            <summary>
            Type of an ESENT object.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_objtyp.Nil">
            <summary>
            Invalid object type.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_objtyp.Table">
            <summary>
            Object is a table.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Vista.VistaParam">
            <summary>
            System parameters that have been added to the Vista version of ESENT.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaParam.CachedClosedTables">
            <summary>
            This parameter controls the number of B+ Tree resources cached by
            the instance after the tables they represent have been closed by
            the application. Large values for this parameter will cause the
            database engine to use more memory but will increase the speed
            with which a large number of tables can be opened randomly by
            the application. This is useful for applications that have a
            schema with a very large number of tables.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaParam.Configuration">
            <summary>
            This parameter exposes multiple sets of default values for the
            entire set of system parameters. When this parameter is set to
            a specific configuration, all system parameter values are reset
            to their default values for that configuration. If the
            configuration is set for a specific instance then global system
            parameters will not be reset to their default values.
            Small Configuration (0): The database engine is optimized for memory use. 
            Legacy Configuration (1): The database engine has its traditional defaults.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaParam.EnableAdvanced">
            <summary>
            This parameter is used to control when the database engine accepts
            or rejects changes to a subset of the system parameters. This
            parameter is used in conjunction with <see cref="F:Microsoft.Isam.Esent.Interop.Vista.VistaParam.Configuration"/> to
            prevent some system parameters from being set away from the selected
            configuration's defaults.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Vista.VistaParam.KeyMost">
            <summary>
            This read-only parameter indicates the maximum allowable index key
            length that can be selected for the current database page size
            (as configured by <see cref="F:Microsoft.Isam.Esent.Interop.JET_param.DatabasePageSize"/>).
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits">
            <summary>
            Grbits that have been added to the Windows 7 version of ESENT.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.ColumnCompressed">
            <summary>
            Compress data in the column, if possible.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.Compressed">
            <summary>
            Try to compress the data when storing it.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.Uncompressed">
            <summary>
            Don't compress the data when storing it.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.ReplayIgnoreLostLogs">
            <summary>
            Recover without error even if uncommitted logs have been lost. Set 
            the recovery waypoint with Windows7Param.WaypointLatency to enable
            this type of recovery.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.Dirty">
            <summary>
            Terminate without flushing the database cache.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.IntrinsicLVsOnly">
            <summary>
            Permit only intrinsic LV's (so materialisation is not required simply
            because a TT has an LV column).
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Windows7.Windows7Grbits.EnumerateInRecordOnly">
            <summary>
            When enumerating column values only retrieve data that is present in
            the record. This means that BLOB columns will not always be retrieved.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Instance">
            <summary>
            A class that encapsulates a <see cref="T:Microsoft.Isam.Esent.Interop.JET_INSTANCE"/> in a disposable object. The
            instance must be closed last and closing the instance releases all other
            resources for the instance.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Instance.parameters">
            <summary>
            Parameters for the instance.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.#ctor(System.String)">
            <summary>
            Initializes a new instance of the Instance class. The underlying
            JET_INSTANCE is allocated, but not initialized.
            </summary>
            <param name="name">
            The name of the instance. This string must be unique within a
            given process hosting the database engine.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.#ctor(System.String,System.String)">
            <summary>
            Initializes a new instance of the Instance class. The underlying
            JET_INSTANCE is allocated, but not initialized.
            </summary>
            <param name="name">
            The name of the instance. This string must be unique within a
            given process hosting the database engine.
            </param>
            <param name="displayName">
            A display name for the instance. This will be used in eventlog
            entries.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.op_Implicit(Microsoft.Isam.Esent.Interop.Instance)~Microsoft.Isam.Esent.Interop.JET_INSTANCE">
            <summary>
            Provide implicit conversion of an Instance object to a JET_INSTANCE
            structure. This is done so that an Instance can be used anywhere a
            JET_INSTANCE is required.
            </summary>
            <param name="instance">The instance to convert.</param>
            <returns>The JET_INSTANCE wrapped by the instance.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.Init">
            <summary>
            Initialize the JET_INSTANCE.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.Init(Microsoft.Isam.Esent.Interop.InitGrbit)">
            <summary>
            Initialize the JET_INSTANCE.
            </summary>
            <param name="grbit">
            Initialization options.
            </param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.Term">
            <summary>
            Terminate the JET_INSTANCE.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.ReleaseHandle">
            <summary>
            Release the handle for this instance.
            </summary>
            <returns>True if the handle could be released.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.CreateInstanceFromHandle">
            <summary>
            Create a JET_INSTANCE from the internal handle value.
            </summary>
            <returns>A JET_INSTANCE containing the internal handle.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Instance.CheckObjectIsNotDisposed">
            <summary>
            Check to see if this instance is invalid or closed.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Instance.JetInstance">
            <summary>
            Gets the JET_INSTANCE that this instance contains.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Instance.Parameters">
            <summary>
            Gets the InstanceParameters for this instance. 
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.IndexSegment">
            <summary>
            Describes one segment of an index.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.IndexSegment.#ctor(System.String,Microsoft.Isam.Esent.Interop.JET_coltyp,System.Boolean,System.Boolean)">
            <summary>
            Initializes a new instance of the IndexSegment class.
            </summary>
            <param name="name">The name of the indexed column.</param>
            <param name="coltyp">The type of the column.</param>
            <param name="isAscending">True if the column is ascending.</param>
            <param name="isASCII">True if the column is over an ASCII column.</param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexSegment.ColumnName">
            <summary>
            Gets name of the column being indexed.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexSegment.Coltyp">
            <summary>
            Gets the type of the column being indexed.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexSegment.IsAscending">
            <summary>
            Gets a value indicating whether the index segment is ascending.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.IndexSegment.IsASCII">
            <summary>
            Gets a value indicating whether the index segment is over an ASCII text
            column. This value is only meaningful for text column segments.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMNVALUE">
            <summary>
            Native (unmanaged) version of the JET_ENUMCOLUMNVALUE class.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNVALUE">
            <summary>
            Enumerates the column values of a record using the JetEnumerateColumns
            function. <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetEnumerateColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,System.Int32,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNID[],System.Int32@,Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMN[]@,Microsoft.Isam.Esent.Interop.JET_PFNREALLOC,System.IntPtr,System.Int32,Microsoft.Isam.Esent.Interop.EnumerateColumnsGrbit)"/> returns an array of JET_ENUMCOLUMNVALUE
            structures. The array is returned in memory that was allocated using
            the callback that was supplied to that function.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNVALUE.SetFromNativeEnumColumnValue(Microsoft.Isam.Esent.Interop.NATIVE_ENUMCOLUMNVALUE)">
            <summary>
            Sets the fields of the object from a native JET_ENUMCOLUMN struct.
            </summary>
            <param name="value">
            The native enumcolumn to set the values from.
            </param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNVALUE.itagSequence">
            <summary>
            Gets the column value (by one-based index) that was enumerated.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNVALUE.err">
            <summary>
            Gets the column status code resulting from the enumeration of the
            column value.
            </summary>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnNull"/>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnSkipped"/>
            <seealso cref="F:Microsoft.Isam.Esent.Interop.JET_wrn.ColumnTruncated"/>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNVALUE.cbData">
            <summary>
            Gets the size of the column value for the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_ENUMCOLUMNVALUE.pvData">
            <summary>
            Gets the value that was enumerated for the column.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.ColumnStream">
            <summary>
            This class provides a streaming interface to a long-value column
            (i.e. a column of type <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongBinary"/> or
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongText"/>).
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumnStream.MaxLongValueSize">
            <summary>
            The size of the biggest long-value column ESENT supports.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumnStream.sesid">
            <summary>
            Session to use.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumnStream.tableid">
            <summary>
            Cursor to use.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumnStream.columnid">
            <summary>
            Columnid to use.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.ColumnStream.ibLongValue">
            <summary>
            Current LV offset.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnStream.#ctor(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_COLUMNID)">
            <summary>
            Initializes a new instance of the ColumnStream class.
            </summary>
            <param name="sesid">The session to use.</param>
            <param name="tableid">The cursor to use.</param>
            <param name="columnid">The columnid of the column to set/retrieve data from.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnStream.Flush">
            <summary>
            Flush the stream.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes a sequence of bytes to the current stream and advances the current
            position within this stream by the number of bytes written.
            </summary>
            <param name="buffer">The buffer to write from.</param>
            <param name="offset">The offset in the buffer to write.</param>
            <param name="count">The number of bytes to write.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads a sequence of bytes from the current stream and advances the 
            position within the stream by the number of bytes read.
            </summary>
            <param name="buffer">The buffer to read into.</param>
            <param name="offset">The offset in the buffer to read into.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes read into the buffer.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream.
            </summary>
            <param name="value">The desired length, in bytes.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Sets the position in the current stream.
            </summary>
            <param name="offset">Byte offset relative to the origin parameter.</param>
            <param name="origin">A SeekOrigin indicating the reference point for the new position.</param>
            <returns>The new position in the current stream.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.ColumnStream.CheckBufferArguments(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Check the buffer arguments given to Read/Write .
            </summary>
            <param name="buffer">The buffer.</param>
            <param name="offset">The offset in the buffer to read/write to.</param>
            <param name="count">The number of bytes to read/write.</param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnStream.Itag">
            <summary>
            Gets or sets the itag of the column.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnStream.CanRead">
            <summary>
            Gets a value indicating whether the stream supports reading.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnStream.CanWrite">
            <summary>
            Gets a value indicating whether the stream supports writing.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnStream.CanSeek">
            <summary>
            Gets a value indicating whether the stream supports seeking.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnStream.Position">
            <summary>
            Gets or sets the current position in the stream.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnStream.Length">
            <summary>
            Gets the current length of the stream.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.ColumnStream.RetrieveGrbit">
            <summary>
            Gets the options that should be used with JetRetrieveColumn.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_UNICODEINDEX">
            <summary>
            The native version of the JET_UNICODEINDEX structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX">
            <summary>
            Customizes how Unicode data gets normalized when an index is created over a Unicode column.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX.GetNativeUnicodeIndex">
            <summary>
            Gets the native version of this object.
            </summary>
            <returns>The native version of this object.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX.lcid">
            <summary>
            Gets or sets the LCID to be used when normalizing unicode. data.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_UNICODEINDEX.dwMapFlags">
            <summary>
            Gets or sets the flags to be used with LCMapString when normalizing unicode data.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_SETCOLUMN">
            <summary>
            The native version of the <see cref="T:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN"/> structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN">
            <summary>
            Contains input and output parameters for <see cref="M:Microsoft.Isam.Esent.Interop.Api.JetSetColumns(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_SETCOLUMN[],System.Int32)"/>.
            Fields in the structure describe what column value to set, how to set it,
            and where to get the column set data.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.CheckDataSize">
            <summary>
            Check to see if cbData is negative or greater than cbData.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.GetNativeSetcolumn">
            <summary>
            Gets the NATIVE_SETCOLUMN structure that represents the object.
            </summary>
            <returns>A NATIVE_SETCOLUMN structure whose fields match the class.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.columnid">
            <summary>
            Gets or sets the column identifier for a column to set.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.pvData">
            <summary>
            Gets or sets a pointer to the data to set.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.cbData">
            <summary>
            Gets or sets the size of the data to set.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.grbit">
            <summary>
            Gets or sets options for the set column operation.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.ibLongValue">
            <summary>
            Gets or sets offset to the first byte to be set in a column of type
            <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongBinary"/> or <see cref="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongText"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.itagSequence">
            <summary>
            Gets or sets the sequence number of value in a multi-valued column to be set. The array of values is one-based.
            The first value is sequence 1, not 0 (zero). If the record column has only one value then 1 should be passed
            as the itagSequence if that value is being replaced. A value of 0 (zero) means to add a new column value instance
            to the end of the sequence of column values.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_SETCOLUMN.err">
            <summary>
            Gets the error code or warning returned from the set column operation.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_coltyp">
            <summary>
            ESENT column types.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Nil">
            <summary>
            Null column type. Invalid for column creation.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Bit">
            <summary>
            True, False or NULL.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.UnsignedByte">
            <summary>
            1-byte integer, unsigned.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Short">
            <summary>
            2-byte integer, signed.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Long">
            <summary>
            4-byte integer, signed.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Currency">
            <summary>
            8-byte integer, signed.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.IEEESingle">
            <summary>
            4-byte IEEE single-precisions.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.IEEEDouble">
            <summary>
            8-byte IEEE double-precision.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.DateTime">
            <summary>
            Integral date, fractional time.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Binary">
            <summary>
            Binary data, up to 255 bytes.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.Text">
            <summary>
            Text data, up to 255 bytes.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongBinary">
            <summary>
            Binary data, up to 2GB.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_coltyp.LongText">
            <summary>
            Text data, up to 2GB.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Session">
            <summary>
            A class that encapsulates a JET_SESID in a disposable object.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Session.sesid">
            <summary>
            The underlying JET_SESID.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Session.#ctor(Microsoft.Isam.Esent.Interop.JET_INSTANCE)">
            <summary>
            Initializes a new instance of the Session class. A new
            JET_SESSION is allocated from the given instance.
            </summary>
            <param name="instance">The instance to start the session in.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Session.op_Implicit(Microsoft.Isam.Esent.Interop.Session)~Microsoft.Isam.Esent.Interop.JET_SESID">
            <summary>
            Implicit conversion operator from a Session to a JET_SESID. This
            allows a Session to be used with APIs which expect a JET_SESID.
            </summary>
            <param name="session">The session to convert.</param>
            <returns>The JET_SESID of the session.</returns>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Session.End">
            <summary>
            Terminate the session.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Session.ReleaseResource">
            <summary>
            Free the underlying JET_SESID
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Session.JetSesid">
            <summary>
            Gets the JET_SESID that this session contains.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Update">
            <summary>
            A class that encapsulates an update on a JET_TABLEID.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Update.sesid">
            <summary>
            The underlying JET_SESID.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.Update.tableid">
            <summary>
            The underlying JET_TABLEID.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Update.#ctor(Microsoft.Isam.Esent.Interop.JET_SESID,Microsoft.Isam.Esent.Interop.JET_TABLEID,Microsoft.Isam.Esent.Interop.JET_prep)">
            <summary>
            Initializes a new instance of the Update class. This automatically
            begins an update. The update will be cancelled if
            not explicitly saved.
            </summary>
            <param name="sesid">The session to start the transaction for.</param>
            <param name="tableid">The tableid to prepare the update for.</param>
            <param name="prep">The type of update.</param>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Update.Save(System.Byte[],System.Int32,System.Int32@)">
            <summary>
            Update the tableid.
            </summary>
            <param name="bookmark">Returns the bookmark of the updated record. This can be null.</param>
            <param name="bookmarkSize">The size of the bookmark buffer.</param>
            <param name="actualBookmarkSize">Returns the actual size of the bookmark.</param>
            <remarks>
            Save is the final step in performing an insert or an update. The update is begun by
            calling creating an Update object and then by calling JetSetColumn or JetSetColumns one or more times
            to set the record state. Finally, Update is called to complete the update operation.
            Indexes are updated only by Update or and not during JetSetColumn or JetSetColumns
            </remarks>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Update.Save">
            <summary>
            Update the tableid.
            </summary>
            <remarks>
            Save is the final step in performing an insert or an update. The update is begun by
            calling creating an Update object and then by calling JetSetColumn or JetSetColumns one or more times
            to set the record state. Finally, Update is called to complete the update operation.
            Indexes are updated only by Update or and not during JetSetColumn or JetSetColumns
            </remarks>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Update.Cancel">
            <summary>
            Cancel the update.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.Update.ReleaseResource">
            <summary>
            Called when the transaction is being disposed while active.
            This should rollback the transaction.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_INDEXLIST">
            <summary>
            The native version of the JET_INDEXLIST structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_INDEXLIST">
            <summary>
            Information about a temporary table containing information
            about all indexes for a given table.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.SetFromNativeIndexlist(Microsoft.Isam.Esent.Interop.NATIVE_INDEXLIST)">
            <summary>
            Sets the fields of the object from a native JET_INDEXLIST struct.
            </summary>
            <param name="value">
            The native indexlist to set the values from.
            </param>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.tableid">
            <summary>
            Gets tableid of the temporary table. This should be closed
            when the table is no longer needed.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.cRecord">
            <summary>
            Gets the number of records in the temporary table.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidindexname">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the name of the index.
            The column is of type JET_coltyp.Text.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidgrbitIndex">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the the grbits used on the index. See <see cref="T:Microsoft.Isam.Esent.Interop.CreateIndexGrbit"/>.
            The column is of type JET_coltyp.Long.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidcColumn">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the number of columns in the index key.
            The column is of type JET_coltyp.Long.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidiColumn">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the index of of this column in the index key.
            The column is of type JET_coltyp.Long.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidcolumnid">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the columnid of the column being indexed.
            The column is of type JET_coltyp.Long.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidcoltyp">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the column type of the column being indexed.
            The column is of type JET_coltyp.Long.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidLangid">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the language id (LCID) of the index.
            The column is of type JET_coltyp.Short.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidCp">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the code page of the indexed column.
            The column is of type JET_coltyp.Short.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidgrbitColumn">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the grbit that apply to the indexed column. See <see cref="T:Microsoft.Isam.Esent.Interop.IndexKeyGrbit"/>.
            The column is of type JET_coltyp.Long.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidcolumnname">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the grbit that apply to the indexed column. See <see cref="T:Microsoft.Isam.Esent.Interop.IndexKeyGrbit"/>.
            The column is of type JET_coltyp.Text.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXLIST.columnidLCMapFlags">
            <summary>
            Gets the columnid of the column in the temporary table which
            stores the unicode normalization flags for the index.
            The column is of type JET_coltyp.Long.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_prep">
            <summary>
            Update types for JetPrepareUpdate.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_prep.Insert">
            <summary>
             This flag causes the cursor to prepare for an insert of a new record.
             All the data is initialized to the default state for the record.
             If the table has an auto-increment column, then a new value is
             assigned to this record regardless of whether the update ultimately
             succeeds, fails or is cancelled.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_prep.Replace">
            <summary>
             This flag causes the cursor to prepare for a replace of the current
             record. If the table has a version column, then the version column
             is set to the next value in its sequence. If this update does not
             complete, then the version value in the record will be unaffected.
             An update lock is taken on the record to prevent other sessions
             from updating this record before this session completes.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_prep.Cancel">
            <summary>
             This flag causes JetPrepareUpdate to cancel the update for this cursor.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_prep.ReplaceNoLock">
            <summary>
             This flag is similar to JET_prepReplace, but no lock is taken to prevent
             other sessions from updating this record. Instead, this session may receive
             JET_errWriteConflict when it calls JetUpdate to complete the update.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_prep.InsertCopy">
            <summary>
             This flag causes the cursor to prepare for an insert of a copy of the
             existing record. There must be a current record if this option is used.
             The initial state of the new record is copied from the current record.
             Long values that are stored off-record are virtually copied.
            </summary>
        </member>
        <member name="F:Microsoft.Isam.Esent.Interop.JET_prep.InsertCopyDeleteOriginal">
            <summary>
             This flag causes the cursor to prepare for an insert of the same record,
             and a delete or the original record. It is used in cases in which the
             primary key has changed.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.NATIVE_INDEXRANGE">
            <summary>
            The native version of the JET_INDEXRANGE structure.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.JET_INDEXRANGE">
            <summary>
            Identifies an index range when it is used with the JetIntersectIndexes function.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INDEXRANGE.#ctor">
            <summary>
            Initializes a new instance of the JET_INDEXRANGE class.
            </summary>
        </member>
        <member name="M:Microsoft.Isam.Esent.Interop.JET_INDEXRANGE.GetNativeIndexRange">
            <summary>
            Get a NATIVE_INDEXRANGE structure representing the object.
            </summary>
            <returns>A NATIVE_INDEXRANGE whose members match the class.</returns>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXRANGE.tableid">
            <summary>
            Gets or sets the cursor containing the index range. The cursor should have an
            index range set with JetSetIndexRange.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.JET_INDEXRANGE.grbit">
            <summary>
            Gets or sets the indexrange option.
            </summary>
        </member>
        <member name="T:Microsoft.Isam.Esent.Interop.Implementation.JetCapabilities">
            <summary>
            Describes the functionality exposed by an object which implements IJetApi.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Implementation.JetCapabilities.SupportsServer2003Features">
            <summary>
            Gets or sets a value indicating whether Windows Server 2003 features
            (in the Interop.Server2003 namespace) are supported.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Implementation.JetCapabilities.SupportsVistaFeatures">
            <summary>
            Gets or sets a value indicating whether Vista features (in the
            Interop.Vista namespace) are supported.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Implementation.JetCapabilities.SupportsWindows7Features">
            <summary>
            Gets or sets a value indicating whether Win7 features (in the
            Interop.Windows7 namespace) are supported.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Implementation.JetCapabilities.SupportsUnicodePaths">
            <summary>
            Gets or sets a value indicating whether unicode file paths are supported.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Implementation.JetCapabilities.SupportsLargeKeys">
            <summary>
            Gets or sets a value indicating whether large (&gt; 255 byte) keys are supported.
            The key size for an index can be specified in the <see cref="T:Microsoft.Isam.Esent.Interop.JET_INDEXCREATE"/>
            object.
            </summary>
        </member>
        <member name="P:Microsoft.Isam.Esent.Interop.Implementation.JetCapabilities.ColumnsKeyMost">
            <summary>
            Gets or sets the maximum number of components in a sort or index key.
            </summary>
        </member>
    </members>
</doc>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Authors

No Biography provided

Paul B.

United States United States
I've been a software developer since 1996 and have enjoyed C# since 2003. I have a Bachelor's degree in Computer Science and for some reason, a Master's degree in Business Administration. I currently do software development contracting/consulting.

| Advertise | Privacy | Mobile
Web03 | 2.8.140814.1 | Last Updated 28 Apr 2010
Article Copyright 2010 by Ayende @ Rahien, Paul B.
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid