User Tools

Site Tools


map_suite_10_upgrade_guide

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
map_suite_10_upgrade_guide [2017/03/30 21:39]
bradrollins [API Changes]
map_suite_10_upgrade_guide [2017/07/27 06:43] (current)
tgwikiupdate
Line 1: Line 1:
-\\ 
 ====== Map Suite 10 Upgrade Guide ====== ====== Map Suite 10 Upgrade Guide ======
 \\ \\
 ===== Map Suite 9.0 vs 10.0 ===== ===== Map Suite 9.0 vs 10.0 =====
 \\ \\
-The update to MapSuite 10.0 introduces a lot of exciting changes ​to MapSuite. ​ We have made a lot of changes between the last release of 9.0 to now We have redesigned from the core up to make it easier to get the features you need and add support for some platforms that we've not yet supported until now with Map Suite 10. You can see all of these changes in the table below. ​  +The update to MapSuite 10.0 introduces a lot of exciting changes ​we have made to MapSuite. We have redesigned ​MapSuite ​from the core up to make it easier to get the features you need and add support for some platforms that we've not yet supported until now with MapSuite ​10.0. This guide will walk you through all of the changes and how to upgrade from 9.0 to 10.0 for your existing project.  ​You can see an overview ​of these changes in the table below. ​  
 \\ \\
 \\ \\
Line 32: Line 31:
 |ThinkGeo.MapSuite.Core.dll ​   | ThinkGeo.MapSuite.Layers.ShapeFile.dll \\ ThinkGeo.MapSuite.Layers.GoogleMaps.dll \\ ThinkGeo.MapSuite.Styles.ClassBreak.dll \\ ThinkGeo.MapSuite.Shapes.UnmanagedProj4Projection.dll \\ ThinkGeo.MapSuite.Drawing.PdfGeoCanvas.dll\\ ....... ​   |  ​ |ThinkGeo.MapSuite.Core.dll ​   | ThinkGeo.MapSuite.Layers.ShapeFile.dll \\ ThinkGeo.MapSuite.Layers.GoogleMaps.dll \\ ThinkGeo.MapSuite.Styles.ClassBreak.dll \\ ThinkGeo.MapSuite.Shapes.UnmanagedProj4Projection.dll \\ ThinkGeo.MapSuite.Drawing.PdfGeoCanvas.dll\\ ....... ​   |  ​
 | ThinkGeo.MapSuite.Desktop.dll ​ \\  | ThinkGeo.MapSuite.Winforms.dll ​       \\                | | ThinkGeo.MapSuite.Desktop.dll ​ \\  | ThinkGeo.MapSuite.Winforms.dll ​       \\                |
 +\\
  
 ==== Namespaces Changes ==== ==== Namespaces Changes ====
Line 38: Line 38:
  
 ^ 9.0      ^ 10.0       ​| ​     ^ 9.0      ^ 10.0       ​| ​    
-|**ThinkGeo.MapSuite.Core**       |ThinkGeo.MapSuite contains common and basic classes for building Map Suite applications like GeographyUnit,​ GeoCollection,​ etc. +|ThinkGeo.MapSuite.Core ​      ​|ThinkGeo.MapSuite contains common and basic classes for building Map Suite applications like GeographyUnit,​ GeoCollection,​ etc. \\ ThinkGeo.MapSuite.Drawing contains drawing-related classes likes GeoImage, GeoSolidBrush,​ etc \\ ThinkGeo.MapSuite.Layers contains some base classes like Layer, FeatureLayer,​ etc. \\ ThinkGeo.MapSuite.Shapes contains geometry-related classes likes PlygonShape,​ LineShape, etc.  ​\\ ThinkGeo.MapSuite.Styles contains classes used for building map styles like AreaStyle, LineStyle, etc. \\ ....... ​
-|        |ThinkGeo.MapSuite.Drawing contains drawing-related classes likes GeoImage, GeoSolidBrush,​ etc  |  +|ThinkGeo.MapSuite.Desktop ​     |ThinkGeo.MapSuite.Winforms ​    ​|  ​ 
-|        |ThinkGeo.MapSuite.Layers contains some base classes like Layer, FeatureLayer,​ etc.  | +\\
-|        |ThinkGeo.MapSuite.Shapes contains geometry-related classes likes PlygonShape,​ LineShape, etc.  ​+
-|        |ThinkGeo.MapSuite.Styles contains classes used for building map styles like AreaStyle, LineStyle, etc.  +
-|**ThinkGeo.MapSuite.Desktop**   |ThinkGeo.MapSuite.Winforms ​    ​|  ​+
 ==== API Changes ====  ==== API Changes ==== 
  
Line 57: Line 54:
     ​     ​
  
-     // 9.0: +     // 9.0:     
-     ​public ​StreamLoadingEventArgs(String alternateStreamNameStream alternateStream,​ FileMode fileMode, FileAccess fileAccess);+     ​public ​TiledWmsLayer(IEnumerable<​Uri>​ serverUrisWebProxy webProxy);
            
      // 10.0:      // 10.0:
-     ​public ​StreamLoadingEventArgs(String alternateStreamNameStream alternateStream,​ GeoFileMode fileMode, GeoFileReadWriteModereadWriteMode);+     ​public ​TiledWmsLayer(IEnumerable<​Uri>​ serverUrisIWebProxy webProxy);
  
 The changes here to the GeoFileMode and GeoFileReadWriteModereadWriteMode features are made to accommodate multi-platform use. The changes here to the GeoFileMode and GeoFileReadWriteModereadWriteMode features are made to accommodate multi-platform use.
 +
 +\\
 ==== No System32 Depedencies ==== ==== No System32 Depedencies ====
  
Line 75: Line 74:
  
 With this switch from system32 to the bin folder of the project, it becomes much easier to deploy your project on the target machine(s) as there is no need to install to the registry. ​ With this switch from system32 to the bin folder of the project, it becomes much easier to deploy your project on the target machine(s) as there is no need to install to the registry. ​
 +\\ 
 +\\
 ==== File Based Licensing Strategy ==== ==== File Based Licensing Strategy ====
  
Line 82: Line 82:
 With the license being stored in the bin folder, rather than in the registry, a project can now run on platforms that do not allow access to the registry such as Linus or Amazon Beanstalk. ​ With the license being stored in the bin folder, rather than in the registry, a project can now run on platforms that do not allow access to the registry such as Linus or Amazon Beanstalk. ​
  
 +\\
 ===== Upgrade To Map Suite 10 in Action ===== ===== Upgrade To Map Suite 10 in Action =====
 Using the [[http://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_winforms_quick_start_guide | Desktop for WinForms Hello World quickstart sample]], here is a guide to upgrading to Map Suite 10.0:  Using the [[http://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_winforms_quick_start_guide | Desktop for WinForms Hello World quickstart sample]], here is a guide to upgrading to Map Suite 10.0: 
  
 +\\
 ==== Remove The Old Assemblies and Install New Packages ==== ==== Remove The Old Assemblies and Install New Packages ====
 Please remove the old assemblies from the project. Please remove the old assemblies from the project.
Line 129: Line 130:
 90% of the API stays the same so that people won’t need to make any code changes. There might be some API changes for the remaining 10%, please check [[http://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_winforms_release_change_log|this change log]] for details. ​ 90% of the API stays the same so that people won’t need to make any code changes. There might be some API changes for the remaining 10%, please check [[http://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_winforms_release_change_log|this change log]] for details. ​
  
 +{{:​wiki:​10upgrade.png}}
  
-===== Summary ​=====+===== FAQ ===== 
 +Here are answers to some of the most common questions that we are asked about the MapSuite 10.0 upgrading. If you still have questions after reading these, feel free to post them our discussion forum. Our forums are monitored by our development staff in order to provide detailed and technical answers when you need them.
  
-{{:wiki:10upgrade.png}}+==== How to use MapEngine MapSuite 10.0? ==== 
 +There is no MapEngine any more, there are two options for you: 
 +  - If you use MapEngine to draw the layer. Please use layer to draw directly.;​ 
 +  - If you use some more functions like zoom, pan, etc. You can do: 
 +     * Use Wpf or WinFoms products instead of MapEngine;​ 
 +     * Use ExtentHelper.XXX();​ 
 +  - If you still want to use MapEngine, we already make MapEngine opensource, please download this [[http://wiki.thinkgeo.com/​wiki/​_media/​mapengine.zip|source file]]. 
 + 
 +If you want to know how to implement your feature with MapSuite 10.0, please refer the samples in [[https://​github.com/​thinkgeo|GitHub]] 
 + 
 +==== Where is GdiPlusXXX? ==== 
 +The new name is GdiPlusGeoCanvas now is something like PlatformGeoCanvas,​ GdiPlusRasterLayer now is NativeImageRasterLayer on Windows. 
 + 
 +==== How to use the WorldMapKit?​ ==== 
 +The OsmWorldMapKitLayer hadn't been supported in version 10. 
 + 
 +If you want to use WorldMapKit as background layer, please just choose WorldStreetsAndImageryOverlay instead of it. 
 + 
 +If you want to render the Sqlite database like original OsmWorldMapKitLayer,​ please just view this sample https://​github.com/​ThinkGeo/​WorldStreetsLayerSDKOnLinux-ForWinForms. 
 + 
 +Upgrading to V10 is recommended,​ but if you want to use version 9 with WorldMapKitLayer,​ please view attached sample, you can double check the executable in bin folder and run directly, replace corresponding assembly to the project and it will works well. 
 +[[http://​wiki.thinkgeo.com/​wiki/​_media/​worldmapkitsdk/​WorldMapKitTest.zip|WorldMapKitTest.zip]] 
 + 
 +==== How to process breaking change? ==== 
 +We have a breaking change page, please refer products wiki page for API change log. 
 +  * iOS: http://​wiki.thinkgeo.com/​wiki/​map_suite_mobile_for_ios_release_change_log_version_10.0.0.0 
 +  * Android: http://​wiki.thinkgeo.com/​wiki/​map_suite_mobile_for_android_release_change_log_version_10.0.0.0 
 +  * WinForms: http://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_winforms_release_change_log_version_10.0.0.0 
 +  * Wpf: http://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_wpf_release_change_log_version_10.0.0.0 
 +  * WebForms: http://​wiki.thinkgeo.com/​wiki/​map_suite_web_for_webforms_release_change_log_version_10.0.0.0 
 +  * WebApi: http://​wiki.thinkgeo.com/​wiki/​map_suite_web_for_webapi_release_change_log_version_10.0.0.0 
 +  * MVC: http://​wiki.thinkgeo.com/​wiki/​map_suite_web_for_mvc_release_change_log_version_10.0.0.
 + 
 +===== Summary =====
  
 We can already see the benefit of using the new Map Suite NuGet packages. You can do everything from within Visual Studio via the console or GUI, and you can check for component updates in real-time. You could easily setup your own NuGet server for your team and share your project. We can already see the benefit of using the new Map Suite NuGet packages. You can do everything from within Visual Studio via the console or GUI, and you can check for component updates in real-time. You could easily setup your own NuGet server for your team and share your project.
  
 For a complete Map Suite 10.0 API list, please [[http://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_winforms_api|check here.]] For a complete Map Suite 10.0 API list, please [[http://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_winforms_api|check here.]]
map_suite_10_upgrade_guide.1490909947.txt.gz · Last modified: 2017/03/30 21:39 by bradrollins