====== Map Suite Mono Environment Setup Guide on Linux ======
sudo apt-get install monodevelop
* Type monodevelop in the terminal to open MonoDevelop or you can click on the left top corner of task bar to search MonoDevelop and run it. You can open the Visual Studio solution file via MonoDevelop.
====WebAPI / WebForms:====
* Follow the above steps, then proceed to the next step.
* Add the Mono Project GPG signin key and the package repository to your system (if you don’t use sudo, be sure to switch to root). Please issue the following commands line by line:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
sudo apt-get update
* Then, install the specific version of MonoDevelop that gives you a working ASP.NET add-in:
sudo apt-get install monodevelop=5.10.0.871-0xamarin2
* To host the ASP.Net debug sample, install XSP4.
sudo apt-get install mono-xsp4
* Install the mono environment. Issue the following commands line by line, depending on network this step may take a few minutes.
sudo apt-get install mono-devel
sudo apt-get install mono-complete
sudo apt-get install referenceassemblies-pcl
//**Notice**//: Please enter Y when asked to continue. *
* Run monodevelop command in terminal to open MonoDevelop, or you can click on left top corner of task bar to search MonoDevelop and run it. You can open Visual Studio solution file via MonoDevelop.
=====Migrate Map Suite Web Projects from Windows to Linux=====
We can create a WebForms project in MonoDevelop and install the NuGet packages. However, there are a couple of necessary steps:
- We cannot drag and drop to add a control to the design page as MonoDevelop does not have a designer. We need to write aspx code manually.
- The map control needs the ScriptManager class in System.Web.Extensions assembly, but it is not referenced by default. We need to add it manually.
The WebAPI and WebForms projects created in Visual Studio on Windows cannot run on Linux with MonoDevelop directly. The following steps show how to migrate them to MonoDevelop.
- Create a WebAPI or WebForms project with Visual Studio and copy the solution to Linux. Open the solution with MonoDevelop.
- After the project is created in Visual Studio, the project will rely on two NuGet packages by default. < * Microsoft.CodeDom.Providers.DotNetCompilerPlatform > and < * Microsoft.Net.Compilers >
These two packages are not supported on Linux. You need to uninstall them.
* Open the Packages solution folder.
* Right-Click on the package that you want to uninstall and click on remove.(See figure 1.)
{{:uninstall_package.png|uninstall}}
\\
//Figure 1. Uninstall the package that you want.//
* In Web.config of this project, you need to remove the xml element named system.codedom. Usually it will be found on the bottom of Web.config.
* After making these changes, press F5 to start the WebAPI project.