public void OpenSQLiteTest() { var ogrDatasource = new OgrDatasource(); try { var result = ogrDatasource.Open2(@"sqlite\onepoint.sqlite", true); Assert.IsTrue(result, "Cannot open SQLite file: " + ogrDatasource.GdalLastErrorMsg); var settings = new GlobalSettings { OgrLayerForceUpdateMode = true }; var capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcCreateLayer); Debug.WriteLine("odcCreateLayer: " + capability); Assert.IsTrue(capability, "Cannot create layer"); capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcDeleteLayer); Debug.WriteLine("odcDeleteLayer: " + capability); Assert.IsTrue(capability, "Cannot delete layer"); capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcCreateDataSource); Debug.WriteLine("odcCreateDataSource: " + capability); //Assert.IsTrue(capability), "Cannot create datasource"); capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcDeleteDataSource); Debug.WriteLine("odcDeleteDataSource: " + capability); //Assert.IsTrue(capability, "Cannot delete datasource"); capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcCreateGeomFieldAfterCreateLayer); Debug.WriteLine("odcCreateGeomFieldAfterCreateLayer: " + capability); Assert.IsTrue(capability, "Cannot create GeomField After CreateLayer"); TestSQLiteLayers(ogrDatasource); } finally { ogrDatasource.Close(); } }
public void OpenPostGISDifferentPortTest() { var ogrDatasource = new OgrDatasource(); try { var result = ogrDatasource.Open("PG:host=127.0.0.1 port=55432 dbname=aw_croppingscheme user=aw_croppingschem password=test123"); Assert.IsTrue(result, "Cannot open PostGIS Connectie: " + ogrDatasource.GdalLastErrorMsg); var settings = new GlobalSettings(); var capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcCreateLayer); Console.WriteLine("odcCreateLayer: " + capability); Assert.IsTrue(capability, "Cannot create layer"); capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcDeleteLayer); Console.WriteLine("odcDeleteLayer: " + capability); Assert.IsTrue(capability, "Cannot delete layer"); capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcCreateDataSource); Console.WriteLine("odcCreateDataSource: " + capability); //Assert.IsTrue(capability), "Cannot create datasource"); capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcDeleteDataSource); Console.WriteLine("odcDeleteDataSource: " + capability); //Assert.IsTrue(capability, "Cannot delete datasource"); capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcCreateGeomFieldAfterCreateLayer); Console.WriteLine("odcCreateGeomFieldAfterCreateLayer: " + capability); Assert.IsTrue(capability, "Cannot create GeomField After CreateLayer"); Assert.IsTrue(ogrDatasource.LayerCount > 1, "No layers found"); for (var i = 0; i < ogrDatasource.LayerCount; i++) { var layer = ogrDatasource.GetLayer(i); Console.WriteLine(layer.Name); } } finally { ogrDatasource.Close(); } }
public void CreateLayerSQLiteTest() { var ogrDatasource = new OgrDatasource(); try { var result = ogrDatasource.Open2(@"sqlite\onepoint.sqlite", true); Assert.IsTrue(result, "Cannot open SQLite file: " + ogrDatasource.GdalLastErrorMsg); var settings = new GlobalSettings { OgrLayerForceUpdateMode = true }; var capability = ogrDatasource.TestCapability(tkOgrDSCapability.odcCreateLayer); Debug.WriteLine("odcCreateLayer: " + capability); Assert.IsTrue(capability, "Cannot create layer"); var originalLayerCount = ogrDatasource.LayerCount; var projection = new GeoProjection(); Assert.IsTrue(projection.SetWgs84(), "Cannot set projection"); var layerCreated = ogrDatasource.CreateLayer("Test", ShpfileType.SHP_POINT, projection, "OVERWRITE=YES"); Assert.IsTrue(layerCreated, "Cannot create layer"); Debug.WriteLine(ogrDatasource.GdalLastErrorMsg); Assert.AreEqual(originalLayerCount + 1, ogrDatasource.LayerCount, "New layer isn't created"); Debug.WriteLine("GetLayerName: " + ogrDatasource.GetLayerName(ogrDatasource.LayerCount - 1)); var firstLayer = ogrDatasource.GetLayer(0); Assert.IsNotNull(firstLayer, $"Could not get first layer: {ogrDatasource.GdalLastErrorMsg}"); // Get layer: var newLayer = ogrDatasource.GetLayer(ogrDatasource.LayerCount - 1, true); // var newLayer = ogrDatasource.GetLayerByName("test", true); Assert.IsNotNull(newLayer, $"Could not get new layer: {ogrDatasource.GdalLastErrorMsg}"); // Add field: var numFeatures = newLayer.FeatureCount[true]; Debug.WriteLine("numFeatures: " + numFeatures); TestSQLiteLayers(ogrDatasource); } finally { if (ogrDatasource.LayerCount > 1) { ogrDatasource.DeleteLayer(ogrDatasource.LayerCount); } ogrDatasource.Close(); } }
private static void ListDriverCapability() { var ds = new OgrDatasource(); if (!ds.Open(CONNECTION_STRING)) { Debug.Print("Failed to establish connection: " + ds.GdalLastErrorMsg); } else { Debug.Print("OGR driver: " + ds.DriverName); Debug.Print("\nDriver capabilities:"); var values = Enum.GetValues(typeof(tkOgrDSCapability)); foreach (tkOgrDSCapability value in values) { Debug.Print(value.ToString() + ": " + ds.TestCapability(value).ToString()); } ds.Close(); } }
public bool TestCapability(DatasourceCapability capability) { return(_datasource.TestCapability((tkOgrDSCapability)capability)); }