/// <summary>
        /// Closes the datasource
        /// </summary>
        public virtual void Close()
        {
            if (!disposed)
            {
                //TODO: (ConnectionPooling)

                /*	if (connector != null)
                 *                      { Pooling.ConnectorPool.ConnectorPoolManager.Release...()
                 *              }*/
                if (_IsOpen)
                {
                    brShapeFile.Close();
                    fsShapeFile.Close();
                    brShapeIndex.Close();
                    fsShapeIndex.Close();
                    if (dbaseFile != null)
                    {
                        dbaseFile.Close();
                    }

                    NativeMethods.UnmapViewOfFile(idxFileMemoryMapView);
                    NativeMethods.CloseHandle(idxFileMemoryMap);
                    idxFileMemoryMap     = IntPtr.Zero;
                    idxFileMemoryMapView = IntPtr.Zero;

                    NativeMethods.UnmapViewOfFile(shpFileMemoryMapView);
                    NativeMethods.CloseHandle(shpFileMemoryMap);
                    shpFileMemoryMapView = IntPtr.Zero;

                    _IsOpen = false;
                }
            }
        }
Exemple #2
0
        /// <summary>
        /// Closes the datasource
        /// </summary>
        public void Close()
        {
            if (!disposed)
            {
                //TODO: (ConnectionPooling)

                /*	if (connector != null)
                 *      { Pooling.ConnectorPool.ConnectorPoolManager.Release...()
                 * }*/
                if (_IsOpen)
                {
                    brShapeFile.Close();
                    fsShapeFile.Close();
                    brShapeIndex.Close();
                    fsShapeIndex.Close();
                    if (dbaseFile != null)
                    {
                        dbaseFile.Close();
                    }
                    _IsOpen = false;
                }
            }
        }