c#json字符串转实体类
时间: 2025-01-05 22:32:46 浏览: 15
### 将 JSON 字符串转换为 C# 实体类
为了实现从 JSON 字符串到 C# 实体类的转换,通常会使用 `System.Text.Json` 或 `Newtonsoft.Json` 库。以下是利用这两个库的具体方法。
#### 使用 System.Text.Json 进行转换
现代 .NET 开发推荐使用内置的 `System.Text.Json` 来处理 JSON 数据:
```csharp
using System;
using System.Text.Json;
public class Ship {
public string Name { get; set; }
public int Speed { get; set; }
}
class Program {
static void Main() {
string jsonString = "{\"Name\":\"Titanic\",\"Speed\":20}";
// 解析 JSON 并映射至实体对象
Ship ship = JsonSerializer.Deserialize<Ship>(jsonString);
Console.WriteLine($"船名: {ship.Name}, 速度: {ship.Speed}");
}
}
```
此方式简单高效,并且性能优越[^1]。
#### 使用 Newtonsoft.Json (Json.NET)
对于更复杂的需求或需要向后兼容旧版本的应用程序,则可以选择广泛使用的第三方库 Json.NET:
```csharp
using Newtonsoft.Json;
public class Product {
public string Name { get; set; }
public decimal Price { get; set; }
}
class Program {
static void Main() {
string json = @"{ 'Name': 'Apple', 'Price': 1.99 }";
// 反序列化 JSON 到产品实例
Product product = JsonConvert.DeserializeObject<Product>(json);
Console.WriteLine($"{product.Name} 的价格是 ${product.Price}");
}
}
```
这种方法提供了更多的配置选项和支持特性[^2]。
阅读全文