C# 将对象转换为 JSON 字符串

Minahil Noor 2023年1月30日 2020年6月9日
  1. C# 使用 JavaScript Serializer().Serialize() 方法将对象转换为 JSON 字符串
  2. C# 使用 JsonConvert.SerializeObject()方法将对象转换为 JSON 字符串
  3. C# 使用 JObject.FromObject()方法将对象转换为 JSON 字符串
C# 将对象转换为 JSON 字符串

在 C# 中,信息可以转换为称为 JavaScript Object Notation(JSON)的有用格式。之所以进行转换,是因为 JSON 格式更易于理解和处理。

本文重点介绍将 C# 对象转换为 JSON 字符串的方法。

C# 使用 JavaScript Serializer().Serialize() 方法将对象转换为 JSON 字符串

为了实现此方法,我们首先创建一个包含信息的自定义类对象。然后将该对象作为参数传递给 JavaScript Serializer().Serialize() 方法。结果,我们将信息转换为 JSON 字符串。

此方法的正确语法如下:

var jsonStringName = new JavaScriptSerializer();
var jsonStringResult = jsonStringName.Serialize(ObjectName);

示例代码:

using System;
using System.Web.Script.Serialization;

class Conversion
{
    static void Main()
    {
        //Creating Custom Class Object
        var Object = new MyInformation
        {
            firstName = "Olivia",
            lastName = "Mason",
            dateOfBirth = new DateOfBirth
            {
                year = 1999,
                month = 06,
                day = 19
            }
        };
        //Creating a JavaScriptSerializer Object
        var jsonString = new JavaScriptSerializer();
        //Use of Serialize() method
        var jsonStringResult = jsonString.Serialize(Object);
        Console.WriteLine(jsonStringResult);
    }
}
//Custom Classes
public class MyInformation
{
    public string firstName;
    public string lastName;
    public DateOfBirth dateOfBirth;
}

public class DateOfBirth
{
    public int year;
    public int month;
    public int day;
    
}

输出:

{
    "firstName":"Olivia",
    "lastName":"Mason",
    "dateOfBirth":
    {
        "year":"1999",
        "month":"06",
        "day":"19"
    }
}

C# 使用 JsonConvert.SerializeObject()方法将对象转换为 JSON 字符串

JsonConvert.SerializeObject()是 JsonConvert 类的方法。它用于将 C# 对象转换为 JSON 字符串。该对象作为参数传递给此方法。

此方法的正确语法如下:

JsonConvert.SerializeObject(ObjectName);

示例代码:

using System;
using Newtonsoft.Json;
 
 
namespace JSONConversion
{
    public class Conversion
    {
        public static void Main(string[] args)
        {
            //Creating custom class object
            Name NewName =new Name
                 {FirstName = "Olivia",
                  LastName = "Mason"};
            //Use of JsonConvert.SerializeObject()
            string jsonString = JsonConvert.SerializeObject(NewName);
            Console.WriteLine(jsonString);
}  
        //Creating custom class
public class Name  
{  
    public string FirstName;  
    public string LastName;    
 
}
    }
}

输出:

{
    'FirstName': 'Olivia',
    'LastName': 'Mason'
}

C# 使用 JObject.FromObject()方法将对象转换为 JSON 字符串

可以在.Net 的早期版本中实现此方法。它可以轻松地将 C# 对象转换为 JSON 字符串。对象名称作为参数传递给此方法。

此方法的正确语法如下:

JObject.FromObject(ObjectName);

示例代码:

using System;
using Newtonsoft.Json.Linq;

 
namespace JSONConversion
{
    public class Conversion
    {
        public static void Main(string[] args)
        {
             name Name = new name 
             {firstname = "Olivia",
             lastname = "Mason"};
             //Use of the method
             var json = JObject.FromObject(Name);  
             Console.WriteLine(json); 
         }  
public class name{
    public string firstname;
    public string lastname;
       }
    }
}
    

输出:

{
  "firstname": "Olivia",
  "lastname": "Mason"
}

相关文章 - Csharp JSON