MsSqlSpatial.cs

Topics: Data Access, SharpMap Project, SharpMap v0.9 / v1.x
May 1, 2008 at 11:23 AM
Hello everyone,
I got a problem with a function call to MsSqlSpatial. The tutorial of MsSqlSpatial tell us that:
"SELECT t.* FROM ST.FilterQuery('GEOTABLE', 'GEOCOLUMN', ST.MakeEnvelope(1000,1000,2000,2000,-1)) AS q INNER JOIN GEOTABLE AS t ON q.oid = t.oid"
-- IS equivalent to:
SELECT * FROM ST.FilterQuery#dbo#GEOTABLE#GEOCOLUMN(ST.MakeEnvelope(1000,1000,2000,2000,-1))

..and infact the sharpmap data provider file "MsSqlSpatial.cs" uses the second notation. But i always receive a sql error, like "ST.FilterQuery#dbo#GEOTABLE#GEOCOLUMN" is unknown or invalid.
Obviously my table and column name are different from the example and right written.

On the other and using the first notation everythings work perfeclty (even though too slowly). So i change the code into the funtcions "GetGeometriesInView" and "BuildSpatialQuerySuffix" and rebuild the ShapMap.dll.
BUT I would like to know if the second notation, that was natively implemented, can be used and how.

Thank you