Exemple #1
0
        protected virtual DataTable BuildSchemaTable(Boolean withGeometryColumn)
        {
            using (IDbConnection conn = DbUtility.CreateConnection(ConnectionString))
                using (IDbCommand cmd = DbUtility.CreateCommand())
                {
                    cmd.CommandText = string.Format("SELECT * FROM {0} ", QualifiedTableName);
                    cmd.CommandType = CommandType.Text;
                    cmd.Connection  = conn;
                    IDbDataAdapter da = DbUtility.CreateAdapter(cmd);
                    DataSet        ds = new DataSet();
                    da.FillSchema(ds, SchemaType.Source);
                    DataTable dt = ds.Tables[0];

                    //remove geometry column from schema
                    if (!withGeometryColumn)
                    {
                        dt.Columns.Remove(GeometryColumn);
                    }

                    return(dt);
                }
        }