ThinkGeo.com    |     Documentation    |     Premium Support

MsSql2008FeatureLayer Error reading data?

 Hello,


I am unable to create a MsSql2008FeatureLayer using version 5.0.43.0.  I get an error reading 'Invalid object name '[DatabaseName]' when trying to display the layer, and cannot set the map extent based on the boundaries of the shape I am adding.  I am using 2008 SQL Express and I used the Shape2SQL tool that I downloaded from SharpGIS.net.  I followed the example code and still haven't had any success.  Is this a known bug with the software, or is there a way around this error?  


Thanks,


Jeff



Dear Jeff, 
  
 This is weird, could you please provide a sample code? I can find out what’s the problem. 
  
 Regards, 
  
 Gary

MyShape = New MsSql2008FeatureLayer(ConfigurationManager.ConnectionStrings("MapDataDB").ConnectionString, "map" & ProjName.ToUpper, "OBJ_ID") 
 MyShape.Name = LayerRow.Item("ShapeFileName").ToString.Trim 
  
  
 …other code here to set the label, style, etc… 
  
  
 MyShape.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(AStyle) 
             MyShape.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(Lbl) 
             MyShape.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20 
 MyShape.CustomGeometryColumnName = "geom" 
  
 MyShape.FeatureSource.Projection = MyProjection 
 MyShape.Open() 
 Map1.StaticOverlay.Layers.Add(MyShape) 
  
 the MapDataDB connectionstring value is Data Source=.\SQLEXPRESS;User ID=MapTest;password=****** and i have verified the data with the SqlSpatial.exe tool. 
  
 Let me know if I can provide more info… 
  
 Thanks, 
 Jeff

Jeff, 
  
 The sample code seems all right. Could you provide a stack-trace for the error that I can track to the method which throw the exception. 
  
 I am also researching on some other way to figure out your problem, so please keep patience and any progress I will let you know. 
  
 Thanks, 
 James

No problem, thanks for your help, and my apologies for this late reply.  Stack trace below: 
  
    at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)    at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)    at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)    at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)    at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()    at System.Data.SqlClient.SqlDataReader.get_MetaData()    at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)    at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)    at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)    at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)    at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)    at System.Data.SqlClient.SqlCommand.ExecuteReader()    at ThinkGeo.MapSuite.Core.MsSql2008FeatureSource.GetBoundingBoxCore()    at ThinkGeo.MapSuite.Core.FeatureSource.GetBoundingBox()    at ThinkGeo.MapSuite.Core.FeatureLayer.GetBoundingBoxCore()    at ThinkGeo.MapSuite.Core.Layer.GetBoundingBox()    at Mapping.LoadPolyLayerSQL(String ProjName, DataRow& LayerRow, Boolean& IsFirstLayer) in C:\TFSAvtex\CityWatch Platform (All Components)\MainLine\Core\Web Sites\Data Manager\Mapping.aspx.vb:line 1252

I guess all it takes is to talk about it a little… I found the error - thanks anyway for your moral support!

Jeff, 
  
 That’s great. 
  
 Any more questions just feel free to let me know. 
  
 Thanks, 
 James