{"id":169,"date":"2003-08-01T12:49:10","date_gmt":"2003-08-02T02:49:10","guid":{"rendered":"http:\/\/www.andrewjohnson.me.uk\/blog\/?p=169"},"modified":"2003-08-01T12:49:10","modified_gmt":"2003-08-02T02:49:10","slug":"xml-in-the-backend","status":"publish","type":"post","link":"https:\/\/andyjohnson.uk\/blog\/2003\/08\/01\/xml-in-the-backend\/","title":{"rendered":"XML in the backend"},"content":{"rendered":"<p>Following-on from my <a href=\"http:\/\/www.andrewjohnson.me.uk\/Articles\/EditorsNoteSiteChanges.aspx\">earlier experiments<\/a> in ASP.NET custom control writing, I&#8217;ve now stirred some <a href=\"http:\/\/www.w3.org\/XML\/\">XML<\/a> into the mix. And learned a bit more about ADO.NET in the process.<\/p>\n<p>Storing the contents of the navigation bar in a database table turned-out to be a pain in the butt.&nbsp;Adding and moving&nbsp;entries by directly editing the table and primary key values was just too difficult. I contemplated writing some kind of client app to make it easier, but I just don&#8217;t have the time.&nbsp;What I wanted was a storage format that was easy to edit using existing tools. The answer was obvious: So I modified the navigation bar control&nbsp;to pull&nbsp;the menu options&nbsp;from an XML file that I can edit with <a href=\"http:\/\/www.xmlspy.com\/\">XML Spy<\/a>&nbsp;and upload to the site. Nice and easy. I like it when things work.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Following-on from my earlier experiments in ASP.NET custom control writing, I&#8217;ve now stirred some XML into the mix. And learned a bit more about ADO.NET in the process. Storing the contents of the navigation bar in a database table turned-out to be a pain in the butt.&nbsp;Adding and moving&nbsp;entries by directly editing the table and &hellip; <a href=\"https:\/\/andyjohnson.uk\/blog\/2003\/08\/01\/xml-in-the-backend\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;XML in the backend&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[],"class_list":["post-169","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/posts\/169","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/comments?post=169"}],"version-history":[{"count":0,"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/posts\/169\/revisions"}],"wp:attachment":[{"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/media?parent=169"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/categories?post=169"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/andyjohnson.uk\/blog\/wp-json\/wp\/v2\/tags?post=169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}