ThinkGeo.com    |     Documentation    |     Premium Support

Target framework issue

Hello


im having an issue with the target framewok im working on the 5.5 desktop edition of thinkgeo the issue im having is that when i assogn the target framework as .net 4.0 the classes of thinkgeo become undifined in my project , when i replace it into 3.5 they work fine but the microsoft.Csharp dll becomes undiefined can u help me


regards



Saddam, 
  
   I am able to re-create this issue and also solve it.  What I tries was to load Desktop C# sample apps solution.  I then changed the targeted framework of the project to 4.0 and save the project.  I closed Visual Studio and reloaded the samples and verified that the framework was still targeting 4.0.  Next I did a Clean on the project and then compiled.  It failed and showed that the desktop, core and some other dll was missing.  I removed them from the references and then proceed to add them back through right clicking on References and adding the references back.  After that I compiled clean. :-)  When I switched the framework Visual Studio did warn me that there might be some manual changes required.  In this case it looked like it was just removing and re adding the references.  I did not have any problem, with microsoft.CSharp dll though.  I suggest you remove it and re-add it as well. 
  
 David

Hello David


i tried the steps u adviced to me to take and still the problem exist here is a print screen of the issue i hope we can resolve it


Thanks



Saddam, 
  
   At this point I am not able to resolve this from the screenshot.  Can you create a small sample that demonstrates the issue and send it to us?  The link below shows the best ways to send that sample to us.  Please include all of the dependencies so it runs "out of the box".  When I get that I can dig deeper. 
  
 wiki.thinkgeo.com/wiki/Map_Suite_Sending_Data_to_Support 
  
 David

Thank u David for the quick reply


here is the solution, i tried to change the specific version property of the DesktopEdition.dll and MapSuiteCore.dll from visual studio 2010


 


Thanks



002_001_Form1.cs (2.26 KB)
call_center.sln (873 Bytes)
call_center.csproj (5.3 KB)

Saddam, 
  
   I was not able to get the project running.  I suggest you zip the files up and ensure that they include everything it needs including the assemblies.  Then e-mail or ftp the zip file per the instructions in the link I sent with the previous response.  I really need to 100% ready to run, meaning that I need to be able to unzip the file, click on one sln file and then press run in Visual Studio and it should compile or fail due to the error. 
  
 David

David  
 i’ve sent u the sln in zip file hopw u answer me soon  
  
 Thanks

Saddam,



  I was able to upgrade your project.  I did notice that the code didn't quite compile.  I changed some of the code, I have //DAVID: on the line above all of my changes.  I am also attaching a screenshot.



What I did was:

1. Unrar the package you sent me. 

2. Open the solution

3. Replace the references with the latest 5.5 production released ones.  Note that I remove the MapSuiteDesktopEdition, GeoApi, NetTopologySuite, and the MapSuiteCore BUT when I added the references back in I ONLY referenced the MapSuiteCore and the MapSuiteDesktopEdition.

4. Tried to compile but it failed..

5. Fixed a few code things, I commented everything I changed in the code below

6. It compiled and ran fine.

7. I went into the projects properties and changed the target profile to 4.0

8. I did a Clean on the project

9. I rebuilt the project without errors

10. It ran fine..




        private void Form1_Load(object sender, EventArgs e)
        {
            // Set the Map Unit. The reason for setting it to DecimalDegrees is that is what the shapefile’s unit of measure is inherently in.
            winformsMap1.MapUnit = GeographyUnit.DecimalDegree;
           //DAVID: I removed the line below.
            // winformsMap1.CanvasGeoBrush = new GeoLinearGradientBrush(Rect, GeoColor.GeographicColors.Ocean1, GeoColor.GeographicColors.Ocean2, GeoLinearGradientMode.ForwardDiagonal);
        
            // We create a new Layer and pass the path to a Shapefile into its constructor. 
            //DAVID: I changed this to path to where I have the data.
            worldLayer = new ShapeFileFeatureLayer(@"C:\Program Files (x86)\ThinkGeo\Map Suite Desktop Full Edition 5.5\Samples\SampleData\Data\Countries02.shp");
            worldLayer.IsVisible = true;
            // Set the worldLayer with a preset Style, as AreaStyles.Country1 has YellowGreen background and black border, our worldLayer will have the same render style.  
            //DAVID: I change the zoom level 10 to 01 so we could see something when we pulled it up
            worldLayer.ZoomLevelSet.ZoomLevel01.DefaultAreaStyle = AreaStyles.Country1;

            // This setting will apply from ZoonLevel01 to ZoomLevel20, that means we can see the world the same style with ZoomLevel01 all the time no matter how far we zoom out/in. 
            //DAVID: I change the zoom level 10 to 01 so we could see something when we pulled it up
            worldLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;
            worldLayer.Open();
            // Create a new Layer Overlay to hold the layer we just created
            LayerOverlay layer1 = new LayerOverlay();
            
            // Add the shapefile layer to the layer overlay
            layer1.Layers.Add(worldLayer);

            // We need to add the layer overlay to Map.
            winformsMap1.Overlays.Add(layer1);

            // Set a proper extent for the Map.  
            //winformsMap1.CurrentExtent = new RectangleShape(0, 78, 30, 26);
            worldLayer.Close();
            // We now need to call the Refresh() method of the Map control so that the Map can redraw based on the data that has been provided.
            winformsMap1.Refresh();
        }
 




David




Thank u david for all the hard work i have just one more question the control winformsMap from the toolbox doesn’t draw the map control when i click on it and draw the map on the form it doesnt draw and visual studio gives me the following warning  
  
 could not find type ThinkGeo.MapSuite.DesktopEdition.WinformsMap  
  
 Thanks

Saddam, 
  
   I have a feeling that this is tied up in the inability to get the references correct.  Maybe you can start with a new solution, change the framework, recompile and then start to add the map & references to that.  If that still gives you a problem I would be happy to create a solution for you that had a map in it you can use as a starting point. 
  
 David

David 
  
  i solved the issue by going back and working with visual studio 2008 and everything is working fine now thanks 
  
 saddam

Saddam, 
  
   I’m glad you were able to resolve your issue.  I’m sorry you were not able to get the project working in Visual Studio 2010.  I tried my best to get it working on your side after I was able to get it to working here on my end.  Visual Studio works great but once you get some strange problem then it’s hard to know where next to go. 
  
 David