title: How do i rename key names in a json and recreate it?
body: <p>i have the following <code>json</code> array (the original data comes from ASP MVC as XML but i have converted them to json) </p>
  
  <pre><code>{"class":{"@Title":"SOCIAL HISTORY","@ID":"1","@ParentID":"0","helpNavNode":[{"@Title":"ALCOHOL CONSUMPTION","@ID":"2","@ParentID":"1","helpNavNode":[{"@Title":" Never","@ID":"3","@ParentID":"2","@Narrative":"ALCOHOL CONSUMPTION: Never"},{"@Title":" Occasionally","@ID":"4","@ParentID":"2","@Narrative":"ALCOHOL CONSUMPTION: Occasionally"},{"@Title":" Socially","@ID":"5","@ParentID":"2","@Narrative":"ALCOHOL CONSUMPTION: Socially"},{"@Title":" Daily (3 beers/day) (6 pack/day)","@ID":"6","@ParentID":"2","@Narrative":"ALCOHOL CONSUMPTION: Daily (3 beers/day) (6 pack/day)"},{"@Title":" Is Alcoholic","@ID":"7","@ParentID":"2","@Narrative":"ALCOHOL CONSUMPTION: Is Alcoholic"},{"@Title":" History of Alcoholism","@ID":"8","@ParentID":"2","@Narrative":"ALCOHOL CONSUMPTION: History of Alcoholism"},{"@Title":" None","@ID":"26","@ParentID":"2","@Narrative":"ALCOHOL CONSUMPTION: None"},{"@Title":"Alcoholism Screen Question","@ID":"39","@ParentID":"2","helpNavNode":{"@Title":" Ever had a drinking problem? Last drink? ","@ID":"40","@ParentID":"39","@Narrative":"ALCOHOL CONSUMPTION:Alcoholism Screen Question: Ever had a drinking problem? Last drink? "}}]},{"@Title":"MARITAL STATUS","@ID":"9","@ParentID":"1","helpNavNode":[{"@Title":" Married","@ID":"10","@ParentID":"9","helpNavNode":{"@Title":" x 10 years","@ID":"15","@ParentID":"10","@Narrative":"MARITAL STATUS: Married: x 10 years"}},{"@Title":" Divorced","@ID":"11","@ParentID":"9","@Narrative":"MARITAL STATUS: Divorced"},{"@Title":" Single","@ID":"12","@ParentID":"9","@Narrative":"MARITAL STATUS: Single"}]},{"@Title":"Recreational drug use","@ID":"13","@ParentID":"1","@Narrative":":Recreational drug use"},{"@Title":"OCCUPATION","@ID":"14","@ParentID":"1","helpNavNode":{"@Title":" works for  x 27 years","@ID":"25","@ParentID":"14","@Narrative":"OCCUPATION: works for  x 27 years"}},{"@Title":" 1 child","@ID":"16","@ParentID":"1","@Narrative":": 1 child"},{"@Title":" 2/3/4/5/6 children","@ID":"17","@ParentID":"1","@Narrative":": 2/3/4/5/6 children"},{"@Title":"Activities","@ID":"18","@ParentID":"1","helpNavNode":[{"@Title":" walks regularly","@ID":"19","@ParentID":"18","@Narrative":"Activities: walks regularly"},{"@Title":" cycles for exercise","@ID":"20","@ParentID":"18","@Narrative":"Activities: cycles for exercise"},{"@Title":" runs 3 days/week","@ID":"21","@ParentID":"18","@Narrative":"Activities: runs 3 days/week"},{"@Title":" hunting and fishing","@ID":"22","@ParentID":"18","@Narrative":"Activities: hunting and fishing"},{"@Title":" hiking and camping","@ID":"23","@ParentID":"18","@Narrative":"Activities: hiking and camping"},{"@Title":" swims regularly","@ID":"24","@ParentID":"18","@Narrative":"Activities: swims regularly"}]},{"@Title":"Tobacco Use","@ID":"27","@ParentID":"1","helpNavNode":[{"@Title":"Cigar, Cigarette, Pipe, Smokeless","@ID":"30","@ParentID":"27","helpNavNode":{"@Title":"10/pk year","@ID":"32","@ParentID":"30","@Narrative":"Tobacco Use:Cigar, Cigarette, Pipe, Smokeless:10/pk year"}},{"@Title":"Quit Date","@ID":"35","@ParentID":"27","@Narrative":"Tobacco Use:Quit Date"},{"@Title":"Year Started","@ID":"36","@ParentID":"27","@Narrative":"Tobacco Use:Year Started"}]},{"@Title":"SocHx  Template","@ID":"37","@ParentID":"1","helpNavNode":[{"@Title":" Living situation:  Occupation:  Tobacco:  EtOH:  Rec. drugs: ","@ID":"41","@ParentID":"37","@Narrative":"SocHx  Template: Living situation:  Occupation:  Tobacco:  EtOH:  Rec. drugs: "},{"@Title":" Living situation:  Occupation:  Tobacco:  EtOH:  Rec. drugs: ","@ID":"42","@ParentID":"37","@Narrative":"SocHx  Template: Living situation:  Occupation:  Tobacco:  EtOH:  Rec. drugs: "}]}]}}
  </code></pre>
  
  <p>two things i want to do with this: </p>
  
  <ol>
  <li>i want to remove the <code>@</code> symbol from where ever it appears</li>
  <li>i need to change the key names into the following:</li>
  </ol>
  
  <p>@Title => text</p>
  
  <p>@ID => id</p>
  
  <p>@ParentID => parent</p>
  
  <p>@Narrative => value</p>
  
  <p>Is there away i could accomplish this? at the moment i wouldn't have a clue on how do it them?</p>
  
  <p>UPDATE: </p>
  
  <p>how <code>json</code> was created. the <code>XMLDocument</code> comes from <code>BLL</code> classes and the following is placed on client the hard coded XML file has a copy of what is returned from BLL so its easy to check it in the client (from my perspective)</p>
  
  <pre><code>@{
   var xdoc = new XmlDocument();
      xdoc.Load(Server.MapPath(Url.Content(@"~/App_Data/XMLFile1.xml")));
      var jsonObj=JsonConvert.SerializeXmlNode(xdoc);
  }
  </code></pre>