Exemple #1
0
        /// <summary>
        /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
        /// </summary>
        public void Dispose()
        {
            Require.NotDisposed(Database.IsDisposed, nameof(AcadDatabase));

            if (commitTransaction)
            {
                transaction.Commit();

                if (SummaryInfo.Changed)
                {
                    SummaryInfo.Commit();
                }

                if (saveOnCommit)
                {
                    Database.SaveAs(saveAsFileName, GetDwgVersion());
                }
            }

            if (disposeTransaction)
            {
                transaction.Dispose();
            }

            if (disposeDatabase)
            {
                Database.Dispose();
            }
        }
Exemple #2
0
        /// <summary>
        /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
        /// </summary>
        /// <param name="force">True, if the drawing database and the transaction should be disposed of, even if keepOpen was used.</param>
        private void DisposeInternal(bool force)
        {
            if (!transaction.IsDisposed)
            {
                if (commitTransaction)
                {
                    transaction.Commit();

                    if (SummaryInfo.Changed)
                    {
                        SummaryInfo.Commit();
                    }
                }

                if (disposeTransaction || force)
                {
                    transaction.Dispose();
                }
            }

            if ((disposeDatabase || force) &&
                !Database.IsDisposed)
            {
                Database.Dispose();
            }
        }
Exemple #3
0
        /// <summary>
        /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
        /// </summary>
        public void Dispose()
        {
            Require.NotDisposed(Database.IsDisposed, nameof(AcadDatabase));

            if (commitTransaction)
            {
                transaction.Commit();

                if (SummaryInfo.Changed)
                {
                    SummaryInfo.Commit();
                }
            }

            if (disposeTransaction)
            {
                transaction.Dispose();
            }

            if (disposeDatabase)
            {
                Database.Dispose();
            }
        }