Tempelkan JSON atau XML sebagai kelas
Di Visual Studio, Anda dapat menyalin teks dari file JSON atau XML lalu menempelkan teks sebagai kelas di kode C# atau Visual Basic Anda. Untuk melakukannya, pilih Edit>Tempel Spesial dan pilih Tempel JSON Sebagai Kelas atau Tempel XML Sebagai Kelas.
Tip
Jika Anda tidak melihat opsi Tempel Spesial pada menu Edit, pastikan Anda memiliki setidaknya salah satu beban kerja berikut yang terinstal: ASP.NET dan pengembangan web, pengembangan Azure, atau pengembangan desktop .NET. Kemudian, pastikan Anda memilih file program untuk aplikasi Anda. Misalnya, untuk aplikasi C#, pilih file Program.cs di Penjelajah Solusi.
JSON (JavaScript Object Notation) dan XML (eXtensible Markup Language) serupa karena digunakan untuk menyimpan dan mengangkut data. Namun, JSON kurang verbose dan dapat menggunakan array.
Contoh
Sebelum Anda menggunakan perintah Tempel JSON Sebagai Kelas atau perintah Tempel XML Sebagai Kelas di Visual Studio, buat tempat penampung untuk teks Anda. Untuk aplikasi C#, Anda dapat menggunakan deklarasi namespace kosong untuk melakukannya, seperti yang ditunjukkan pada cuplikan layar berikut:
Kemudian, tempelkan teks JSON atau XML Anda di dalam kurung kurawal.
JSON
Berikut adalah contoh teks JSON:
{
"Colors": [
{
"numberKey": 1,
"isPrimary": true,
"listColors": ["Red", "Blue", "Yellow"]
},
{
"numberKey": 2,
"isPrimary": false,
"listColors": ["Purple", "Green", "Orange"]
} ]
}
Berikut adalah cuplikan layar yang memperlihatkan bagaimana Visual Studio mengonversi teks JSON ke kelas:
XML
Berikut adalah contoh teks XML:
<root>
<color>
<id>01</id>
<name>red</name>
<type>primary</type>
</color>
<color>
<id>02</id>
<name>green</name>
<type>secondary</type>
</color>
</root>
Berikut adalah contoh kode yang memperlihatkan bagaimana Visual Studio mengonversi teks XML ke kelas:
using System;
namespace PasteDemo
{
// NOTE: Generated code may require at least .NET Framework 4.5 or .NET Core/Standard 2.0.
/// <remarks/>
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)]
public partial class root
{
private rootColor[] colorField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("color")]
public rootColor[] color
{
get
{
return this.colorField;
}
set
{
this.colorField = value;
}
}
}
/// <remarks/>
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class rootColor
{
private byte idField;
private string nameField;
private string typeField;
/// <remarks/>
public byte id
{
get
{
return this.idField;
}
set
{
this.idField = value;
}
}
/// <remarks/>
public string name
{
get
{
return this.nameField;
}
set
{
this.nameField = value;
}
}
/// <remarks/>
public string type
{
get
{
return this.typeField;
}
set
{
this.typeField = value;
}
}
}
}