[mapguide-users] Nothing is working or what I'm doing wrong?

Kenneth Skovhede, GEOGRAF A/S ks at geograf.dk
Mon Oct 20 09:53:51 EDT 2008


The viewer overwrites the runtime map on startup, so if you run this 
before starting the viewer, your changes will be lost.
You should not create a new runtime map, but open the one the viewer 
creates for you, modify it, save it, and refresh the client.
I belive the correct sequence would be:
MgMap map = new MgMap(resourceSrvc);
map.Open(mapName):

The viewer takes a string like:
"Library://Folder/MapName.MapDefinition"
and uses the map name:
"Folder/MapName"

You must use the same name in your code, or you won't get to the runtime 
map.

If you want the layer to show when the map loads, have a look at this:
http://trac.osgeo.org/mapguide/wiki/maestro/MaestroAPI/samples/AddInitialLayer

You can perform the same actions without the MaestroAPI if you like, but 
you have to deal with the xml in raw form.

Regards, Kenneth Skovhede, GEOGRAF A/S



Galois skrev:
> Whatever I try to do it's just not working.
>
> Add a new layer?
> The layer is added but never shown
>
> Add a point? Nothing
>
> Add a new group?
> The Group is added but never shown
>
> So, I simple tried to change the LegendLabel of an existing layer.
> Nothing happened again...
>
> If anyone can tell me what I am doing wrong I would appreciate it.
>
> Code follows:
>
>
> using System;
> using System.Data;
> using System.Configuration;
> using System.Web;
> using System.Web.Security;
> using System.Web.UI;
> using System.Web.UI.WebControls;
> using System.Web.UI.WebControls.WebParts;
> using System.Web.UI.HtmlControls;
> using OSGeo.MapGuide;
> using System.Xml;
> using System.IO;
> using System.Text;
>
> public partial class _Default : System.Web.UI.Page
> {
>     public string sessionId;
>     public string webLayout;
>     public MgLayer tmpLayer;
>     protected System.Web.UI.HtmlControls.HtmlGenericControl Frame1;
>
>     protected void Page_Load(object sender, EventArgs e)
>     {
>         string physicalPath = @"C:\Program
> Files\MapGuideOpenSource\WebServerExtensions\www\webconfig.ini";
>
>         try
>         {
>             MapGuideApi.MgInitializeWebTier(physicalPath);
>
>
>             passAndSession();
>
>
>             //Associate a session ID with the MgSiteConnection Object
>             MgUserInformation userInfo_new = new
> MgUserInformation(sessionId);
>
>             MgSiteConnection siteConnection = new MgSiteConnection();
>
>             siteConnection.Open(userInfo_new);
>
>
>
>             // Get an instance of the required service(s)
>             MgResourceService resourceSrvc =
> (MgResourceService)siteConnection.CreateService(MgServiceType.ResourceService);
>             MgFeatureService featureSrvc =
> (MgFeatureService)siteConnection.CreateService(MgServiceType.FeatureService);
>
>
>
>             MgMap map = new MgMap(siteConnection);
>
>
>             webLayout =
> "Library://GoSpatial/Web+Layouts/Autostrada+Brescia+Padova+Map.WebLayout";
>
>             MgResourceIdentifier resId = new
> MgResourceIdentifier("Library://GoSpatial/Maps/Italy Map.MapDefinition");
>
>             String mapName = resId.GetName();
>
>             MgResourceIdentifier mapStateId = new
> MgResourceIdentifier("Session:" + sessionId + "//" + mapName + "." +
> MgResourceType.Map);
>
>
>
>             createSaveOpen(map, resourceSrvc, resId, mapName, mapStateId);
>
>
>             MgLayerBase firstLayer = map.GetLayers().GetItem(0);
>             firstLayer.SetLegendLabel("CHANGE");
>             
>
>             map.Save(resourceSrvc, mapStateId);
>         }
>         catch (Exception ex)
>         {
>             throw (ex);
>         }
>     }
>
>
> Thx in advanced!
>
> PS I have never but never in my life try to do something and in 2 weeks not
> shown even a small improvement...
>   


More information about the mapguide-users mailing list