<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7638.1">
<TITLE>ByteReader Problem</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P><FONT SIZE=2 FACE="Arial">I am trying to alter a map definition through the API and cannot get the contents of the MgByteReader in string format. Here's the code:-</FONT></P>

<P><FONT SIZE=2 FACE="Courier New">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT><FONT COLOR="#2B91AF" SIZE=2 FACE="Courier New">String</FONT><FONT SIZE=2 FACE="Courier New"> mapDefinition = </FONT><FONT COLOR="#A31515" SIZE=2 FACE="Courier New">&quot;Library://My Folder/Maps/My Map.MapDefinition&quot;</FONT><FONT SIZE=2 FACE="Courier New">;</FONT>

<BR><FONT SIZE=2 FACE="Courier New">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT><FONT COLOR="#2B91AF" SIZE=2 FACE="Courier New">MgResourceIdentifier</FONT><FONT SIZE=2 FACE="Courier New"> MapResID = </FONT><FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">new</FONT><FONT SIZE=2 FACE="Courier New"> </FONT><FONT COLOR="#2B91AF" SIZE=2 FACE="Courier New">MgResourceIdentifier</FONT><FONT SIZE=2 FACE="Courier New">(mapDefinition);</FONT>
</P>

<P><FONT SIZE=2 FACE="Courier New">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT><FONT COLOR="#2B91AF" SIZE=2 FACE="Courier New">MgByteReader</FONT><FONT SIZE=2 FACE="Courier New"> mapByteRdr = res.GetResourceContent(MapResID);//res is instantiated Resource Service.</FONT>
</P>

<P><FONT SIZE=2 FACE="Courier New">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT><FONT COLOR="#2B91AF" SIZE=2 FACE="Courier New">XmlDocument</FONT><FONT SIZE=2 FACE="Courier New"> doc = </FONT><FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">new</FONT><FONT SIZE=2 FACE="Courier New"> </FONT><FONT COLOR="#2B91AF" SIZE=2 FACE="Courier New">XmlDocument</FONT><FONT SIZE=2 FACE="Courier New">();</FONT>

<BR><FONT SIZE=2 FACE="Courier New">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT>

<BR><FONT SIZE=2 FACE="Courier New">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; doc.LoadXml(mapByteRdr.ToString());</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">LoadXML fails with an error ' Root element is missing'. I can copy the contents of</FONT> <FONT SIZE=2 FACE="Arial">mapByteRdr from Visual Studio at runtime and it contains properly formatted XML for the map definition. If I use the ToFile() method, the resultant file is empty. I cannot see why these two methods do not return the xml string in the reader. Any help is welcome.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">Cheers,</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">Keith</FONT>
</P>

<br><br>
<CENTER><FONT face="Arial, Helvetica, sans-serif" size=2><B>This email and any attached files are confidential and copyright protected. If you are not the addressee, any dissemination of this communication is strictly prohibited. Unless otherwise expressly agreed in writing, nothing stated in this communication shall be legally binding.</B></FONT> 
<P><FONT face="Arial, Helvetica, sans-serif" size=2>The ultimate parent company of the Atkins Group is WS Atkins plc. Registered in England No. 1885586. Registered Office Woodcote Grove, Ashley Road, Epsom, Surrey KT18 5BW.</FONT> 
<P><FONT face=Webdings color=green size=5>P</FONT> <FONT face="Arial, Helvetica, sans-serif" color=green size=2><B>Consider the environment. Please don't print this e-mail unless you really need to.</B></FONT> </CENTER></P>
</body>
</HTML>