ThinkGeo.com    |     Documentation    |     Premium Support

MS SQL SERVER 2008 problems

Hello,


I have the following problem when i try to read a layer from a table i dont get anything and when i debug it this error occurs


 


if you use the CustomOverlays collection you may not at the same time use the following properties:  BackgroundOverlay, StaticOverlay, DynamicOverlay or MarkerOverlay.  CustomOverlays was designed to replace these so that you can implement as many overlays as you need in any order.  Trying to use CustomerOverlays and one of the properties above is not allowed as there is not a definitive logical order we could draw them in


the thing is that i dont use CustomOverlay anywhere in my code.


 private void LoadAMapFromMsSQL2008()

        {



           

            string connectString = "Server = ------; Database = -----; Trusted_Connection = True";



            SqlConnection sqlConnection = new SqlConnection(connectString);

            try

            {

                sqlConnection.Open();

                SqlCommand sqlCommand = new SqlCommand("Select Count(*) from Odiko_Diktyo", sqlConnection);

              

                int count = (int)sqlCommand.ExecuteScalar(); // I can read the table and the count is correct

                

                MsSql2008FeatureLayer sql2008Layer = new MsSql2008FeatureLayer(connectString, "Odiko_Diktyo", "OID_Odikou_Diktyou");




                sql2008Layer.ZoomLevelSet.ZoomLevel01.DefaultLineStyle = LineStyles.SecondaryRoad2;

                

                sql2008Layer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;

           

    

                Map1.StaticOverlay.Layers.Add("Sql2008Layer", sql2008Layer);

            



            finally

            {

               // sqlConnection.Close();

            }



            

        }


I have changed the .aspx file and turned the visible="false" attribute off


Any help would be a appreciated


 


dimitris





Dimitris, 
  
 I cannot find any code using CustomOverlay neither on my end. Could you provide us the version of web edition you are using and provide us more code of your app such as attache your *.aspx.cs file here so that we can check for you. If it’s not public, please send to support@thinkgeo.com and ask them to forward to me. 
  
 By the way, we have removed this limit in our latest version; so you can use them freely in the future. 
  
 Thanks, 
 Howard

The error seems to have stoped even in debug mode so the problem is that i cant see the layer ...


Im just testing it on the default LoadAMSSQL2008FeatureLayer control of the ThinkGeo Map Suite 3.0 Web Edition with ajax . I have not changed the .aspx file (just the visible part) i will sent you the .cs file again with the page load that i did not before.


 


using System;

using System.Web.UI;

using ThinkGeo.MapSuite.Core;

using ThinkGeo.MapSuite.WebEdition;

using System.Data.SqlClient;



namespace CSSamples.Samples.DataProviders

{

    public partial class LoadAMSSQL2008FeatureLayer : System.Web.UI.Page

    {

        protected void Page_Load(object sender, EventArgs e)

        {

            if (!Page.IsPostBack)

            {

                Map1.MapBackground.BackgroundBrush = new GeoSolidBrush(GeoColor.FromHtml("#E5E3DF"));

              


//in order to get the correct boundings i select  the layer that i want to show further down in order to get its boundingsThis layer is the same as the one i will take from the table Maybe here is the problem???

                ShapeFileFeatureLayer worldLayer = new ShapeFileFeatureLayer(Server.MapPath(@"\SampleData\IMP_Οδικό δίκτυο.shp"));

                worldLayer.RequireIndex = false;

                worldLayer.Open();

                RectangleShape pp = default(RectangleShape);

                pp = worldLayer.GetBoundingBox(); //pp has this value in debug {467648.344137506,4243419.00218209,507054.592955843,4167422.99924372}

                Map1.CurrentExtent = pp;

                Map1.MapUnit = GeographyUnit.Meter;

             

                

                LoadAMapFromMsSQL2008();

            }

        }



        private void LoadAMapFromMsSQL2008()

        {

       

            string connectString = "Server = -------; Database = -------; Trusted_Connection = True";



            SqlConnection sqlConnection = new SqlConnection(connectString);

            try

            {

                sqlConnection.Open();

                SqlCommand sqlCommand = new SqlCommand("Select Count(*) from Odiko_Diktyo", sqlConnection);

         

                int count = (int)sqlCommand.ExecuteScalar(); //The count is correct

                

                MsSql2008FeatureLayer sql2008Layer = new MsSql2008FeatureLayer(connectString, "Odiko_Diktyo", "OID_Odikou_Diktyou");

                sql2008Layer.ZoomLevelSet.ZoomLevel01.DefaultLineStyle = LineStyles.SecondaryRoad2; //The layer must display polylines its a roads layer

                

                sql2008Layer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;

           



                Map1.StaticOverlay.Layers.Add("Sql2008Layer", sql2008Layer);

               

            }



            finally

            {

               // sqlConnection.Close();

            }



            

        }

    }

}

 


if you need more info tell me i know its not correct to get the boundings like i do  but for now i dont know how to get them from the table since i have been working with shp files and i have just started using geodatabase.


 


dimitris



Dimitris, 
  
 Could you provide us the version of web edition you are using; also, the latest version have removed the limit so you can ask support@thinkgeo.com for a new temporary build which is not full tested by us. We cannot recreate your issue here so we are looking forward your feedback. 
  
 Thanks, 
 Howard