[mapguide-users] layerdefinitionfactory with .NET
padmini godavarthi
godavarthi.padmini at gmail.com
Tue Dec 30 06:16:20 EST 2008
Hi,
i want to do thematic mapping in .net .for that i suppose to use
LayerDefinitionFctory .
how to use it in .net?
can u send me the code in .net
Thanks and Regards,
Padmini
m.karam wrote:
>
> 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://n2.nabble.com/layerdefinitionfactory-with-.NET-tp1809201p2092027.html
Sent from the MapGuide Users mailing list archive at Nabble.com.
More information about the mapguide-users
mailing list