IRI.Maptor.Infrastructure.PersonalGdb
3.0.0
dotnet add package IRI.Maptor.Infrastructure.PersonalGdb --version 3.0.0
NuGet\Install-Package IRI.Maptor.Infrastructure.PersonalGdb -Version 3.0.0
<PackageReference Include="IRI.Maptor.Infrastructure.PersonalGdb" Version="3.0.0" />
<PackageVersion Include="IRI.Maptor.Infrastructure.PersonalGdb" Version="3.0.0" />
<PackageReference Include="IRI.Maptor.Infrastructure.PersonalGdb" />
paket add IRI.Maptor.Infrastructure.PersonalGdb --version 3.0.0
#r "nuget: IRI.Maptor.Infrastructure.PersonalGdb, 3.0.0"
#:package IRI.Maptor.Infrastructure.PersonalGdb@3.0.0
#addin nuget:?package=IRI.Maptor.Infrastructure.PersonalGdb&version=3.0.0
#tool nuget:?package=IRI.Maptor.Infrastructure.PersonalGdb&version=3.0.0
IRI.Maptor.Infrastructure.PersonalGdb
Persistence adapter for ESRI Personal Geodatabases (.mdb files), accessed via OleDb / Microsoft
Access Database Engine. Geodatabases authored by any ArcGIS 10.x or 11.x version are supported —
the version-stamped ESRI schema namespace in the geodatabase metadata is normalized automatically,
so reads are independent of the authoring ArcGIS version. The adapter also picks whichever ACE
OLEDB provider (12.0 or 16.0) is installed on the machine.
Installation
dotnet add package IRI.Maptor.Infrastructure.PersonalGdb
Features
PersonalGdbDataSource— Maptor vector data source (IVectorDataSource) over Personal GDB feature classesPersonalGdbInfrastructure— connection and schema helpers (open.mdb, list feature classes, read geometries and attributes)PersonalGdb— write support: create new geodatabases, create feature classes, and insert features (ArcGIS-compatible output)- Geometry is read from the Personal GDB binary format and converted to native
Geometry<Point>objects - Attribute table access with type-mapped field reading
Usage
Writing a Personal Geodatabase:
using IRI.Maptor.Infrastructure.PersonalGdb;
using IRI.Maptor.Infrastructure.PersonalGdb.Enums;
using IRI.Maptor.Infrastructure.PersonalGdb.Model;
// create a new empty .mdb (or PersonalGdb.Open(...) for an existing one)
var gdb = PersonalGdb.CreateEmpty(@"c:\data\my.mdb");
// add a feature class ("layer") with its CRS and attribute schema
gdb.CreateFeatureClass("Roads", GeometryType.LineString, SrsBases.GeodeticWgs84,
new List<PersonalGdbField>
{
new() { Name = "Name", FieldType = GdbEsriFieldType.esriFieldTypeString, Length = 100 },
new() { Name = "Code", FieldType = GdbEsriFieldType.esriFieldTypeInteger },
});
// insert features (geometries must already be in the feature class CRS)
gdb.Insert("Roads", features);
Notes:
- Supported geometry types: Point, MultiPoint, LineString/MultiLineString, Polygon/MultiPolygon — XY only (no Z/M).
CreateEmptyextracts an embedded template (template.mdb), an empty personal geodatabase authored in ArcCatalog (ArcGIS 10.7 catalog schema). All catalog metadata (GDB_Items,GDB_ItemRelationships,GDB_GeomColumns,GDB_SpatialRefs) plus the per-feature-class spatial index tables are maintained on write, so the result opens in ArcMap/ArcCatalog.OBJECTID,SHAPE, and (for lines/polygons)SHAPE_Length/SHAPE_Areacolumns are created and populated automatically.
Limitations
- Windows only (OleDb / ACE provider).
- Microsoft Access Database Engine (ACE OLEDB 12.0 or 16.0) must be installed.
NuGet package · Report issues · Back to IRI.Maptor.Infrastructure
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0-windows7.0 is compatible. net9.0-windows was computed. net10.0-windows was computed. |
-
net8.0-windows7.0
- IRI.Maptor.Core.Persistence (>= 3.0.0)
- System.Data.OleDb (>= 9.0.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0 | 96 | 8/23/2026 |
| 3.0.0-alpha | 85 | 8/22/2026 |