private void Dispose(bool disposing)
        {
            if (!disposed)
            {
                if (disposing)
                {
                    if (reader != null)
                    {
                        reader.Dispose();
                        reader = null;
                    }

                    if (stream != null)
                    {
                        stream.Dispose();
                        stream = null;
                    }

                    if (dataTable != null)
                    {
                        dataTable.Dispose();
                        dataTable = null;
                    }
                }

                disposed = true;
            }
        }