Refactor
:my
=>
'code'
Codes
Refactorings
Popular
Best
Submit
Spam
Account
Logout
Login
JavaScript doesn't seem to be activated, expect things to be ugly and sloppy!
More Jobs
Recent
sort_by_multiple
Prepare links - friendly URLs
Rails Active Record Time Summary
Experimental Prime Number Generator
Pythonify my code
DVD Directory Archiver
Raytracer in haskell
Cryptography with MD5
Experimental Prime Number Generator
has_many :through collection saving
Popular
sort_by_multiple
Prepare links - friendly URLs
Cryptography with MD5
Rails Active Record Time Summary
Raytracer in haskell
DVD Directory Archiver
Pythonify my code
Experimental Prime Number Generator
Code to detect the web browser
simplify multiple gsub
Pastable version of
Load XmlNodeList into an XmlDocument
<div style="overflow:auto;border:solid 1px #ccc;background:#000;color:#F8F8F8"> <div class="section"> <span style="margin:0;padding:4px 6px;font-size:12px;float:right;">VB.Net 2.0</span> <pre style="float:left;margin:0 10px;border-right:0;color:#666;">1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37</pre> <pre class="sunburst"> <span style="color:#99CF50;">Private</span><span style="color:#99CF50;"> Function </span><span style="color:#DAD085;"><span style="color:#89BDFF;">GetPreviousMonthsXml</span></span>(<span style="color:#3E87E3;">ByVal</span> months <span style="color:#E28964;">As</span> <span style="color:#9B859D;">Integer</span>,<span style="color:#3E87E3;"> ByVal</span> startDate <span style="color:#E28964;">As</span> <span style="color:#9B859D;">Date</span>,<span style="color:#3E87E3;"> ByVal</span> xDoc <span style="color:#E28964;">As</span> <span style="color:#9B859D;">XmlDocument</span>,<span style="color:#3E87E3;"> ByVal</span> path <span style="color:#E28964;">As</span> <span style="color:#9B859D;">String</span>,<span style="color:#3E87E3;"> ByVal</span> nodeName <span style="color:#E28964;">As</span> <span style="color:#9B859D;">String</span>) <span style="color:#E28964;">As</span> <span style="color:#9B859D;">XmlDocument</span> <span style="color:#AEAEAE;font-style:italic;"><span style="color:#AEAEAE;font-style:italic;">'</span> build xpath string with list of months to return</span> <span style="color:#3E87E3;"><span style="color:#99CF50;">Dim</span> <span style="color:#3E87E3;">xp</span> </span><span style="color:#E28964;">As</span><span style="color:#99CF50;"> New </span><span style="color:#DAD085;"><span style="color:#89BDFF;">StringBuilder</span></span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>//<span style="color:#65B042;">"</span></span>) xp.<span style="color:#DAD085;"><span style="color:#89BDFF;">Append</span></span>(<span style="color:#3E87E3;">nodeName</span>) xp.<span style="color:#DAD085;"><span style="color:#89BDFF;">Append</span></span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>[<span style="color:#65B042;">"</span></span>) <span style="color:#E28964;">For</span> i <span style="color:#E28964;">As</span> <span style="color:#9B859D;">Integer</span> <span style="color:#E28964;">=</span> <span style="color:#3387CC;">0</span> <span style="color:#E28964;">To</span> (<span style="color:#3E87E3;">months</span> <span style="color:#E28964;">-</span> <span style="color:#3387CC;">1</span>) <span style="color:#AEAEAE;font-style:italic;"><span style="color:#AEAEAE;font-style:italic;">'</span> get year and month portion of date for datestring</span> xp.<span style="color:#DAD085;"><span style="color:#89BDFF;">Append</span></span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>starts-with(@Id, '<span style="color:#65B042;">"</span></span>) xp.<span style="color:#DAD085;"><span style="color:#89BDFF;">Append</span></span>(startDate.<span style="color:#DAD085;"><span style="color:#89BDFF;">AddMonths</span></span>(<span style="color:#E28964;">-</span><span style="color:#3E87E3;">i</span>).<span style="color:#DAD085;"><span style="color:#89BDFF;">ToString</span></span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>yyyy-MM<span style="color:#65B042;">"</span></span>)) <span style="color:#E28964;">If</span> <span style="color:#3E87E3;">i</span> <span style="color:#E28964;"><</span> (<span style="color:#3E87E3;">months</span> <span style="color:#E28964;">-</span> <span style="color:#3387CC;">1</span>) <span style="color:#E28964;">Then</span> xp.<span style="color:#DAD085;"><span style="color:#89BDFF;">Append</span></span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>') or <span style="color:#65B042;">"</span></span>) <span style="color:#E28964;">Else</span> xp.<span style="color:#DAD085;"><span style="color:#89BDFF;">Append</span></span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>')]<span style="color:#65B042;">"</span></span>) <span style="color:#E28964;">End If</span> <span style="color:#E28964;">Next</span> <span style="color:#AEAEAE;font-style:italic;"><span style="color:#AEAEAE;font-style:italic;">'</span> *** This is the block that needs to be refactored ***</span> <span style="color:#AEAEAE;font-style:italic;"><span style="color:#AEAEAE;font-style:italic;">'</span> import nodelist into an xmldocument</span> <span style="color:#3E87E3;"><span style="color:#99CF50;">Dim</span> <span style="color:#3E87E3;">xnl</span> </span><span style="color:#E28964;">As</span> <span style="color:#9B859D;">XmlNodeList</span> <span style="color:#E28964;">=</span> xDoc.<span style="color:#DAD085;"><span style="color:#89BDFF;">SelectNodes</span></span>(xp.<span style="color:#DAD085;"><span style="color:#89BDFF;">ToString</span></span>()) <span style="color:#3E87E3;"><span style="color:#99CF50;">Dim</span> <span style="color:#3E87E3;">returnXDoc</span> </span><span style="color:#E28964;">As</span><span style="color:#99CF50;"> New </span><span style="color:#DAD085;"><span style="color:#89BDFF;">XmlDocument</span></span>(xDoc.<span style="color:#3E87E3;">NameTable</span>) <span style="color:#3E87E3;">returnXDoc</span> <span style="color:#E28964;">=</span> xDoc.<span style="color:#DAD085;"><span style="color:#89BDFF;">Clone</span></span>() <span style="color:#3E87E3;"><span style="color:#99CF50;">Dim</span> <span style="color:#3E87E3;">nodeParents</span> </span><span style="color:#E28964;">As</span> <span style="color:#9B859D;">XmlNodeList</span> <span style="color:#E28964;">=</span> returnXDoc.<span style="color:#DAD085;"><span style="color:#89BDFF;">SelectNodes</span></span>(<span style="color:#3E87E3;">path</span>) <span style="color:#E28964;">For</span> <span style="color:#E28964;">Each</span> nodeParent <span style="color:#E28964;">As</span> <span style="color:#9B859D;">XmlNode</span> In nodeParents <span style="color:#E28964;">For</span> <span style="color:#E28964;">Each</span> nodeToDelete <span style="color:#E28964;">As</span> <span style="color:#9B859D;">XmlNode</span> In nodeParent.<span style="color:#DAD085;"><span style="color:#89BDFF;">SelectNodes</span></span>(<span style="color:#3E87E3;">nodeName</span>) nodeParent.<span style="color:#DAD085;"><span style="color:#89BDFF;">RemoveChild</span></span>(<span style="color:#3E87E3;">nodeToDelete</span>) <span style="color:#E28964;">Next</span> <span style="color:#E28964;">Next</span> <span style="color:#E28964;">For</span> <span style="color:#E28964;">Each</span> node <span style="color:#E28964;">As</span> <span style="color:#9B859D;">XmlNode</span> In xnl <span style="color:#3E87E3;"><span style="color:#99CF50;">Dim</span> <span style="color:#3E87E3;">newNode</span> </span><span style="color:#E28964;">As</span> <span style="color:#9B859D;">XmlNode</span> <span style="color:#E28964;">=</span> returnXDoc.<span style="color:#DAD085;"><span style="color:#89BDFF;">ImportNode</span></span>(<span style="color:#3E87E3;">node</span>,<span style="color:#3387CC;"> True</span>) returnXDoc.DocumentElement.<span style="color:#DAD085;"><span style="color:#89BDFF;">SelectSingleNode</span></span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>//<span style="color:#65B042;">"</span></span> <span style="color:#E28964;">&</span> node.ParentNode.<span style="color:#3E87E3;">Name</span> <span style="color:#E28964;">&</span> <span style="color:#65B042;"><span style="color:#65B042;">"</span>[@Id='<span style="color:#65B042;">"</span></span> <span style="color:#E28964;">&</span> newNode.<span style="color:#DAD085;"><span style="color:#89BDFF;">Attributes</span></span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>Id<span style="color:#65B042;">"</span></span>).Value.<span style="color:#DAD085;">Split</span>(<span style="color:#65B042;"><span style="color:#65B042;">"</span>-<span style="color:#65B042;">"</span></span>)(<span style="color:#3387CC;">0</span>) <span style="color:#E28964;">&</span> <span style="color:#65B042;"><span style="color:#65B042;">"</span>']<span style="color:#65B042;">"</span></span>).<span style="color:#DAD085;"><span style="color:#89BDFF;">AppendChild</span></span>(<span style="color:#3E87E3;">newNode</span>) <span style="color:#E28964;">Next</span> <span style="color:#AEAEAE;font-style:italic;"><span style="color:#AEAEAE;font-style:italic;">'</span> *** end ***</span> <span style="color:#E28964;">Return</span> returnXDoc <span style="color:#99CF50;">End Function</span> </pre> </div> </div> <a href="http://refactormycode.com/codes/36-load-xmlnodelist-into-an-xmldocument" style="color:#fff" title="As seen on RefactorMyCode.com"><img alt="Small_logo" src="http://refactormycode.com/images/small_logo.gif" style="border:0" /></a>