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...
_______________________________________________
mapguide-users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/mapguide-users