{"id":3799,"date":"2017-07-06T08:06:35","date_gmt":"2017-07-06T15:06:35","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=3799"},"modified":"2025-06-13T20:57:05","modified_gmt":"2025-06-14T03:57:05","slug":"xml-json-conversion-json-net","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/pt\/xml-json-conversion-json-net\/","title":{"rendered":"Convers\u00e3o de XML para JSON no C# usando Json.NET"},"content":{"rendered":"<div class=\"paragraph\">\n<div class=\"paragraph\">\n<p>Convers\u00e3o de dados XML em JSON que podem ser carregados no Couchbase Server <span style=\"font-weight: 400\">pode ser realizado com um pouco de .NET<\/span>. Dependendo da fonte dos dados, voc\u00ea poder\u00e1 usar uma ferramenta como <a href=\"https:\/\/docs.couchbase.com\/talend-connector\/index.html\">Talend<\/a>. Mas voc\u00ea tamb\u00e9m pode querer escrever um aplicativo C# .NET simples com <a href=\"https:\/\/www.newtonsoft.com\/json\">Json.NET da Newtonsoft<\/a> para fazer isso. <span style=\"font-weight: 400\">Neste artigo, mostrarei a voc\u00ea como converter XML em JSON no C# usando o Json.NET.<\/span><\/p>\n<p><a href=\"https:\/\/resources.couchbase.com\/c\/10-nosql-use-cases-ebook?x=kS8g0a\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14422 alignright\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/07\/image_2023-05-22_160947247-1024x559.png\" alt=\"10 Common NoSQL Use Cases for Modern Applications\" width=\"306\" height=\"167\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/image_2023-05-22_160947247-1024x559.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/image_2023-05-22_160947247-300x164.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/image_2023-05-22_160947247-768x419.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/image_2023-05-22_160947247.png 1225w\" sizes=\"auto, (max-width: 306px) 100vw, 306px\" \/><\/a>N\u00e3o est\u00e1 usando o Couchbase Server? N\u00e3o tem problema, este \u00e9 um exemplo bastante gen\u00e9rico. Mas considere as vantagens de ter um banco de dados com todos os recursos usando JSON no centro da sua solu\u00e7\u00e3o; indexa\u00e7\u00e3o, consulta, pesquisa, an\u00e1lise e suporte m\u00f3vel s\u00e3o todos integrados e acess\u00edveis com um <a href=\"https:\/\/docs.couchbase.com\/dotnet-sdk\/current\/hello-world\/overview.html\">SDK DO .NET<\/a>. Veja mais <a href=\"https:\/\/resources.couchbase.com\/c\/10-nosql-use-cases-ebook?x=kS8g0a\">vantagens em nosso whitepaper t\u00e9cnico<\/a> ou <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/downloads\/\">download do Couchbase<\/a> e acompanhe esta postagem.<\/p>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_xml_data\">Dados XML<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Para os fins deste tutorial, usarei um exemplo de XML muito simples. Se seu XML for mais complexo (v\u00e1rios atributos, por exemplo), sua abordagem tamb\u00e9m ter\u00e1 de ser mais complexa. (O Json.NET pode lidar com todas as convers\u00f5es de XML para Json, mas ele segue um conjunto espec\u00edfico de <a href=\"https:\/\/www.newtonsoft.com\/json\/help\/html\/ConvertingJSONandXML.htm\">regras de convers\u00e3o<\/a>). Aqui est\u00e1 um exemplo de dados:<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">            var xml = @\"\r\n&lt;Invoice&gt;\r\n    &lt;Timestamp&gt;1\/1\/2017 00:01&lt;\/Timestamp&gt;\r\n    &lt;CustNumber&gt;12345&lt;\/CustNumber&gt;\r\n    &lt;AcctNumber&gt;54321&lt;\/AcctNumber&gt;\r\n&lt;\/Invoice&gt;\";<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Observe que eu tenho esse XML como uma string codificada no C#. Em uma situa\u00e7\u00e3o real, voc\u00ea provavelmente estaria extraindo XML de um banco de dados, de uma API REST, de arquivos XML etc.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Quando voc\u00ea tiver o XML bruto, poder\u00e1 criar um <code>XmlDocument<\/code> objeto (<code>XmlDocument<\/code> vive no <code>System.Xml<\/code> namespace).<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">XmlDocument doc = new XmlDocument();\r\ndoc.LoadXml(xml);<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_conversion_with_json_net\">Convers\u00e3o com Json.NET<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Quando voc\u00ea tiver um <code>XmlDocument<\/code> voc\u00ea pode usar o Json.NET para converter esse objeto em uma representa\u00e7\u00e3o Json.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">var json = JsonConvert.SerializeXmlNode(doc, Formatting.None, true);<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Neste exemplo, estou pedindo ao Json.NET para serializar um n\u00f3 XML:<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>Eu usei <code>Formata\u00e7\u00e3o.Nenhum<\/code>. Se eu quisesse exibir o Json real, talvez fosse melhor usar <code>Formata\u00e7\u00e3o.Indentado<\/code><\/li>\n<li>O \u00faltimo <code>verdadeiro<\/code> especifica que eu quero omitir o objeto raiz. No XML acima, voc\u00ea pode pensar em <code>&lt;Invoice&gt;&lt;\/Invoice&gt;<\/code> como o objeto raiz. Eu s\u00f3 quero os valores do objeto Invoice. Se eu n\u00e3o omitisse o n\u00f3 raiz, o Json resultante teria a seguinte apar\u00eancia: <code>{\"Invoice\":{\"Timestamp\":\"1\/1\/2017 00:01\",\"CustNumber\":\"12345\",\"AcctNumber\":\"54321\"}}<\/code><\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_saving_the_json_result\">Salvando o resultado Json<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Por fim, vamos colocar o Json no Couchbase. A maneira mais f\u00e1cil de fazer isso seria chamar novamente o <code>JsonConvert<\/code> para desserializar o Json em um C# <code>objeto<\/code>. Esse objeto seria ent\u00e3o usado com a fun\u00e7\u00e3o <code>bucket.Insert(...)<\/code> m\u00e9todo.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">object transactObject1 = JsonConvert.DeserializeObject(json);\r\nbucket.Insert(Guid.NewGuid().ToString(), transactObject1);<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Com esse m\u00e9todo, o Json seria armazenado no Couchbase da seguinte forma:<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/07\/07201-xml-to-json-object-storage.png\" alt=\"XML serialized to object\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Isso pode ser bom, mas muitas vezes voc\u00ea vai querer ter mais controle sobre o formato. Com o Json.NET, podemos serializar para uma determinada classe, em vez de apenas <code>objeto<\/code>. Vamos criar um <code>Fatura<\/code> classe assim:<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">public class Invoice\r\n{\r\n    public DateTime Timestamp { get; set; }\r\n    public string CustNumber { get; set; }\r\n    public int AcctNumber { get; set; }\r\n}<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Observe que agora h\u00e1 algumas informa\u00e7\u00f5es de tipo. O Timestamp \u00e9 um <code>DateTime<\/code> e o AcctNumber \u00e9 um <code>int<\/code>. A convers\u00e3o ainda funcionar\u00e1, mas o resultado ser\u00e1 diferente, de acordo com <a href=\"https:\/\/www.newtonsoft.com\/json\/help\/html\/ConvertingJSONandXML.htm\">Regras de convers\u00e3o do Json.NET<\/a>. (Confira tamb\u00e9m o <a href=\"https:\/\/www.newtonsoft.com\/json\/help\/html\/Introduction.htm\">Documenta\u00e7\u00e3o completa do Json.NET<\/a> se voc\u00ea ainda n\u00e3o estiver familiarizado com ele).<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">Invoice transactObject2 = JsonConvert.DeserializeObject&lt;Invoice&gt;(json);\r\nbucket.Insert(Guid.NewGuid().ToString(), transactObject2);<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>O resultado dessa inser\u00e7\u00e3o ter\u00e1 a seguinte apar\u00eancia:<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/07\/07202-xml-to-dotnet-object-storage.png\" alt=\"XML serialized to new class object\" \/><\/span><\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>Observe que o campo de registro de data e hora \u00e9 diferente: ele \u00e9 armazenado de uma forma mais padronizada.<\/li>\n<li>O valor do campo acctNumber n\u00e3o est\u00e1 entre aspas, o que indica que est\u00e1 sendo armazenado como um n\u00famero.<\/li>\n<li>Por fim, observe que os nomes dos campos s\u00e3o diferentes. Isso se deve \u00e0 maneira como o Json.NET nomeia os campos Json por padr\u00e3o. Voc\u00ea pode especificar nomes diferentes usando o par\u00e2metro <code>JsonProperty<\/code> atributo.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_that_s_it\">\u00c9 isso a\u00ed<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Mais um pequeno detalhe a ser destacado: Eu usei <code>Guid.NewGuid().ToString()<\/code> para criar chaves arbitr\u00e1rias para os documentos. Se voc\u00ea tiver valor(es) nos dados XML que deseja usar como chave, poder\u00e1\/dever\u00e1 usar esse(s) valor(es).<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Esta publica\u00e7\u00e3o do blog foi inspirada em uma conversa por e-mail com um usu\u00e1rio do Couchbase. Se voc\u00ea tiver alguma sugest\u00e3o de ferramentas, dicas ou truques para facilitar o processo de convers\u00e3o de XML para JSON, entre em contato comigo. Ou entre em contato comigo se houver algo sobre o qual gostaria de ver meu blog! Voc\u00ea pode <a href=\"mailto:matthew.groves@couchbase.com\">enviar-me um e-mail<\/a> ou <a href=\"https:\/\/twitter.com\/mgroves\">entre em contato comigo @mgroves no Twitter<\/a>.<\/p>\n<h2>Continue aprendendo<\/h2>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Leia: <a href=\"https:\/\/resources.couchbase.com\/c\/10-nosql-use-cases-ebook?x=kS8g0a\">10 casos de uso comuns de NoSQL para aplicativos modernos<\/a><\/li>\n<li>Download: <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/downloads\/\">Couchbase Server ou obtenha uma avalia\u00e7\u00e3o gratuita do Capella DBaaS<\/a><\/li>\n<li>Assista ao <a href=\"https:\/\/www.youtube.com\/watch?v=zoZW0tM6hwU&amp;t=528s\">Migra\u00e7\u00e3o de Oracle para Couchbase<\/a> V\u00eddeo do YouTube<\/li>\n<li>Assista \u00e0 discuss\u00e3o do painel de Desenvolvimento de Carreira do The Register <a href=\"https:\/\/resources.couchbase.com\/c\/video-career-development-developers?x=kS8g0a\">Tr\u00eas maneiras pelas quais os desenvolvedores est\u00e3o se adaptando \u00e0s mudan\u00e7as<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><iframe loading=\"lazy\" title=\"The Register - Desenvolvimento de carreira para desenvolvedores\" width=\"900\" height=\"506\" src=\"https:\/\/www.youtube.com\/embed\/1kHUwx3dXvY?start=1&#038;feature=oembed&#038;enablejsapi=1&#038;origin=https:\/\/www.couchbase.com\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Converting XML to JSON data that can be loaded into Couchbase Server can be accomplished with a little bit of .NET. Depending on the source of the data, you might be able to use a tool like Talend. But you [&hellip;]<\/p>","protected":false},"author":71,"featured_media":14424,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1811,10127,1816,1819],"tags":[1261,1747],"ppma_author":[8937],"class_list":["post-3799","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dotnet","category-c-sharp","category-couchbase-server","category-data-modeling","tag-json","tag-xml"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.8 (Yoast SEO v25.8) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Convert XML to JSON In C# Using Json.NET | Couchbase Guide<\/title>\n<meta name=\"description\" content=\"Follow the necessary steps to convert XML to JSON in C# using Json.NET with this guide from Couchbase. We are here to make data work best for you.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/pt\/xml-json-conversion-json-net\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Converting XML to JSON In C# Using Json.NET\" \/>\n<meta property=\"og:description\" content=\"Follow the necessary steps to convert XML to JSON in C# using Json.NET with this guide from Couchbase. We are here to make data work best for you.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/pt\/xml-json-conversion-json-net\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-07-06T15:06:35+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T03:57:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Matthew Groves\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@mgroves\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matthew Groves\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/\"},\"author\":{\"name\":\"Matthew Groves\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58\"},\"headline\":\"Converting XML to JSON In C# Using Json.NET\",\"datePublished\":\"2017-07-06T15:06:35+00:00\",\"dateModified\":\"2025-06-14T03:57:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/\"},\"wordCount\":728,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png\",\"keywords\":[\"JSON\",\"XML\"],\"articleSection\":[\".NET\",\"C#\",\"Couchbase Server\",\"Data Modeling\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/\",\"name\":\"Convert XML to JSON In C# Using Json.NET | Couchbase Guide\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png\",\"datePublished\":\"2017-07-06T15:06:35+00:00\",\"dateModified\":\"2025-06-14T03:57:05+00:00\",\"description\":\"Follow the necessary steps to convert XML to JSON in C# using Json.NET with this guide from Couchbase. We are here to make data work best for you.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png\",\"width\":1200,\"height\":628,\"caption\":\"Convert XML to {JSON} in C# using Json.NET\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Converting XML to JSON In C# Using Json.NET\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58\",\"name\":\"Matthew Groves\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/ba51e6aacc53995c323a634e4502ef54\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g\",\"caption\":\"Matthew Groves\"},\"description\":\"Matthew D. Groves is a guy who loves to code. It doesn't matter if it's C#, jQuery, or PHP: he'll submit pull requests for anything. He has been coding professionally ever since he wrote a QuickBASIC point-of-sale app for his parent's pizza shop back in the 90s. He currently works as a Senior Product Marketing Manager for Couchbase. His free time is spent with his family, watching the Reds, and getting involved in the developer community. He is the author of AOP in .NET, Pro Microservices in .NET, a Pluralsight author, and a Microsoft MVP.\",\"sameAs\":[\"https:\/\/crosscuttingconcerns.com\",\"https:\/\/x.com\/mgroves\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/pt\/author\/matthew-groves\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Convert XML to JSON In C# Using Json.NET | Couchbase Guide","description":"Siga as etapas necess\u00e1rias para converter XML em JSON no C# usando Json.NET com este guia do Couchbase. Estamos aqui para fazer com que os dados funcionem melhor para voc\u00ea.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/pt\/xml-json-conversion-json-net\/","og_locale":"pt_BR","og_type":"article","og_title":"Converting XML to JSON In C# Using Json.NET","og_description":"Follow the necessary steps to convert XML to JSON in C# using Json.NET with this guide from Couchbase. We are here to make data work best for you.","og_url":"https:\/\/www.couchbase.com\/blog\/pt\/xml-json-conversion-json-net\/","og_site_name":"The Couchbase Blog","article_published_time":"2017-07-06T15:06:35+00:00","article_modified_time":"2025-06-14T03:57:05+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png","type":"image\/png"}],"author":"Matthew Groves","twitter_card":"summary_large_image","twitter_creator":"@mgroves","twitter_misc":{"Written by":"Matthew Groves","Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/"},"author":{"name":"Matthew Groves","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58"},"headline":"Converting XML to JSON In C# Using Json.NET","datePublished":"2017-07-06T15:06:35+00:00","dateModified":"2025-06-14T03:57:05+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/"},"wordCount":728,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png","keywords":["JSON","XML"],"articleSection":[".NET","C#","Couchbase Server","Data Modeling"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/","url":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/","name":"Convert XML to JSON In C# Using Json.NET | Couchbase Guide","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png","datePublished":"2017-07-06T15:06:35+00:00","dateModified":"2025-06-14T03:57:05+00:00","description":"Siga as etapas necess\u00e1rias para converter XML em JSON no C# usando Json.NET com este guia do Couchbase. Estamos aqui para fazer com que os dados funcionem melhor para voc\u00ea.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/07\/XML-to-JSON-in-C.png","width":1200,"height":628,"caption":"Convert XML to {JSON} in C# using Json.NET"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/xml-json-conversion-json-net\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Converting XML to JSON In C# Using Json.NET"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"Blog do Couchbase","description":"Couchbase, o banco de dados NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"Blog do Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58","name":"Matthew Groves","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/ba51e6aacc53995c323a634e4502ef54","url":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","caption":"Matthew Groves"},"description":"Matthew D. Groves \u00e9 um cara que adora programar. N\u00e3o importa se \u00e9 C#, jQuery ou PHP: ele enviar\u00e1 solicita\u00e7\u00f5es de pull para qualquer coisa. Ele tem programado profissionalmente desde que escreveu um aplicativo de ponto de venda QuickBASIC para a pizzaria de seus pais nos anos 90. Atualmente, ele trabalha como gerente s\u00eanior de marketing de produtos da Couchbase. Seu tempo livre \u00e9 passado com a fam\u00edlia, assistindo aos Reds e participando da comunidade de desenvolvedores. Ele \u00e9 autor de AOP in .NET, Pro Microservices in .NET, autor da Pluralsight e Microsoft MVP.","sameAs":["https:\/\/crosscuttingconcerns.com","https:\/\/x.com\/mgroves"],"url":"https:\/\/www.couchbase.com\/blog\/pt\/author\/matthew-groves\/"}]}},"authors":[{"term_id":8937,"user_id":71,"is_guest":0,"slug":"matthew-groves","display_name":"Matthew Groves","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","author_category":"","last_name":"Groves","first_name":"Matthew","job_title":"","user_url":"https:\/\/crosscuttingconcerns.com","description":"Matthew D. Groves \u00e9 um cara que adora programar.  N\u00e3o importa se \u00e9 C#, jQuery ou PHP: ele enviar\u00e1 solicita\u00e7\u00f5es de pull para qualquer coisa.  Ele tem programado profissionalmente desde que escreveu um aplicativo de ponto de venda QuickBASIC para a pizzaria de seus pais nos anos 90.  Atualmente, ele trabalha como gerente s\u00eanior de marketing de produtos da Couchbase. Seu tempo livre \u00e9 passado com a fam\u00edlia, assistindo aos Reds e participando da comunidade de desenvolvedores.  Ele \u00e9 autor de AOP in .NET, Pro Microservices in .NET, autor da Pluralsight e Microsoft MVP."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/3799","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/users\/71"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/comments?post=3799"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/3799\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media\/14424"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media?parent=3799"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/categories?post=3799"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/tags?post=3799"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/ppma_author?post=3799"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}