[mapguide-users] layerdefinitionfactory with .NET
m.karam
m21384k at yahoo.com
Tue Mar 6 04:04:55 EST 2007
Hi,
Many thanks for you Jackie
it works good
Regards
Karam
Jackie Ng wrote:
>
> Hi there,
>
> There is no .NET equivalent to LayerDefintionFactory. You'll have to port
> it over to .net.
>
> layerdefinitionfactory.php simply takes a bunch of xml templates in the
> "viewerfiles" directory of your web extensions install folder and fills in
> the blanks with the parameters you provide.
>
> example of CreateAreaRule() in .net:
>
> class LayerDefinitionFactory
> {
> ...
>
> public static string CreateAreaRule(string legendLabel, string
> filterText, string foreGroudColor)
> {
> StreamReader reader = new StreamReader("path/to/arearule.templ");
> string areaRuleXml = reader.ReadToEnd();
> string [] values = new string[] { legendLabel, filterText,
> foreGroundColor };
> areaRuleXml = Substitute(areaRuleXml, values);
> return areaRuleXml;
> }
>
> ...
>
> static String Substitute(String templ, String[] vals)
> {
> StringBuilder res = new StringBuilder();
> int index = 0, val = 0;
> bool found;
> do
> {
> found = false;
> int i = templ.IndexOf('%', index);
> if(i != -1)
> {
> found = true;
> res.Append(templ.Substring(index, i - index));
> if(i < templ.Length - 1)
> {
> if(templ[i+1] == '%')
> res.Append('%');
> else if(templ[i+1] == 's')
> res.Append(vals[val ++]);
> else
> res.Append('@'); //add a character illegal in
> jscript so we know the template was incorrect
> index = i + 2;
> }
> }
> } while(found);
> res.Append(templ.Substring(index));
> return res.ToString();
> }
> }
>
>
> Other CreateXXX functions are variations on the above example.
>
> Regards,
>
> - Jackie
>
>
> m.karam wrote:
>>
>> Hi everybody
>>
>> How can I use the (layerdefinitionfactory.php) API functions witn .NET ?
>>
>> thanks
>>
>> Karam
>>
>
>
--
View this message in context: http://www.nabble.com/layerdefinitionfactory-with-.NET-tf3347652s16610.html#a9328358
Sent from the MapGuide Users mailing list archive at Nabble.com.
More information about the mapguide-users
mailing list