使用JSON C#中的API抽象通信

时间:2013-12-14 15:44:08

标签: c# json api

我正在尝试实现一个可以提供自定义对象的层,并将它们提交给外部API。我们的想法是创建一个对象,然后将其传递给某种数据管理器,以序列化该对象并将其发送到外部API。

我猜我可以通过循环遍历类的字段来实现某种基本的序列化:

Type classType = typeof(TestClass);
foreach(FieldInfo field in classType.GetFields(BindingFlags.Public | BindingFlags.Instance))
{
Console.WriteLine(field.Name);
}

是否有更好的方法来处理将要作为JSON发送到API的对象?最终的目标是能够通过GET请求接收对象,并通过类似json.net的方式将其转换为C#类。

1 个答案:

答案 0 :(得分:1)

看看Newtonsoft's JSON library。有了它,你可以做类似的事情:

Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Sizes = new string[] { "Small" };

string json = JsonConvert.SerializeObject(product);
//{
//  "Name": "Apple",
//  "Expiry": "2008-12-28T00:00:00",
//  "Sizes": [
//    "Small"
//  ]
//}

它也可以在Nuget

中找到