public void TestDiscussionNtsAndBaffeledOleDb() { var reader = new NetTopologySuite.IO.WKTReader(); var poly = reader.Read( @"POLYGON ((428999.76819468878 360451.93329044303, 428998.25517286535 360420.80827007542, 429023.1119599645 360406.75878171506, 429004.52340613387 360451.71714446822, 429004.52340613387 360451.71714446822, 428999.76819468878 360451.93329044303))"); var table = WriteCsv(); var p = new SharpMap.Data.Providers.OleDbPoint( "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\"" + System.IO.Path.GetTempPath() + "\";" + "Extended Properties=\"text;HDR=Yes;FMT=Delimited\"", table, "ID", "X", "Y"); var extents = p.GetExtents(); NUnit.Framework.Assert.AreEqual(4, p.GetFeatureCount()); p.DefinitionQuery = "Name='One'"; NUnit.Framework.Assert.AreEqual(1, p.GetFeatureCount()); var fdr = p.GetFeatureByOid(1); NUnit.Framework.Assert.AreEqual(1, (int)fdr.Attributes[0]); p.DefinitionQuery = string.Empty; var fds = new SharpMap.Data.FeatureDataSet(); p.ExecuteIntersectionQuery(extents, fds); NUnit.Framework.Assert.AreEqual(1, fds.Tables.Count); NUnit.Framework.Assert.AreEqual(4, fds.Tables[0].Rows.Count); fds.Tables.Remove(fds.Tables[0]); p.ExecuteIntersectionQuery(poly, fds); NUnit.Framework.Assert.AreEqual(1, fds.Tables.Count); NUnit.Framework.Assert.AreEqual(3, fds.Tables[0].Rows.Count); var inside = new System.Collections.Generic.List <bool>(new[] { false, true, true, true }); NUnit.Framework.Assert.AreEqual(System.Linq.Enumerable.Count(inside, b => b), fds.Tables[0].Rows.Count); var ext = p.GetExtents(); var oids = p.GetOidsInView(ext); NUnit.Framework.Assert.AreEqual(4, System.Linq.Enumerable.Count(oids)); System.IO.File.Delete(System.IO.Path.Combine(System.IO.Path.GetTempPath(), table)); }
public void TestDiscussionNtsAndBaffeledOleDb() { var reader = new NetTopologySuite.IO.WKTReader(); var poly = reader.Read( @"POLYGON ((428999.76819468878 360451.93329044303, 428998.25517286535 360420.80827007542, 429023.1119599645 360406.75878171506, 429004.52340613387 360451.71714446822, 429004.52340613387 360451.71714446822, 428999.76819468878 360451.93329044303))"); var table = WriteCsv(); var p = new SharpMap.Data.Providers.OleDbPoint( "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\"" + System.IO.Path.GetTempPath() + "\";" + "Extended Properties=\"text;HDR=Yes;FMT=Delimited\"", table, "ID", "X", "Y"); var extents = p.GetExtents(); NUnit.Framework.Assert.AreEqual(4, p.GetFeatureCount()); p.DefinitionQuery = "Name='One'"; NUnit.Framework.Assert.AreEqual(1, p.GetFeatureCount()); var fdr = p.GetFeature(1); NUnit.Framework.Assert.AreEqual(1, (int)fdr[0]); p.DefinitionQuery = string.Empty; var fds = new SharpMap.Data.FeatureDataSet(); p.ExecuteIntersectionQuery(extents, fds); NUnit.Framework.Assert.AreEqual(1, fds.Tables.Count); NUnit.Framework.Assert.AreEqual(4, fds.Tables[0].Rows.Count); fds.Tables.Clear(); p.ExecuteIntersectionQuery(poly, fds); NUnit.Framework.Assert.AreEqual(1, fds.Tables.Count); NUnit.Framework.Assert.AreEqual(3, fds.Tables[0].Rows.Count); var inside = new System.Collections.Generic.List<bool>(new[] { false, true, true, true }); NUnit.Framework.Assert.AreEqual(System.Linq.Enumerable.Count(inside, (b) => b == true), fds.Tables[0].Rows.Count); var ext = p.GetExtents(); var oids = p.GetObjectIDsInView(ext); NUnit.Framework.Assert.AreEqual(4, oids.Count); System.IO.File.Delete(System.IO.Path.Combine(System.IO.Path.GetTempPath(), table)); }