我正在尝试编写一个API - 他们网站上的预期输出(针对第三方)如下所示:
{
"api_version" : 4 ,
"hotel_ids" : [97497],
"hotels" :
[
{
"hotel_id": 97497,
"room_types":
{
"Fenway Room":
{
"url": "someurlhere",
"price": 178.50,
"room_code": "SINGLE"
}
}
}
]
}
我正在使用在线工具:http://json2csharp.com/
它给出了以下类:
public class FenwayRoom
{
public string url { get; set; }
public double price { get; set; }
public string room_code { get; set; }
}
public class RoomTypes
{
public FenwayRoom __invalid_name__Fenway Room { get; set; }
}
public class Hotel
{
public int hotel_id { get; set; }
public RoomTypes room_types { get; set; }
}
public class RootObject
{
public int api_version { get; set; }
public List<int> hotel_ids { get; set; }
public List<Hotel> hotels { get; set; }
}
您可以在RoomTypes中查看:
FenwayRoom __invalid_name__Fenway Room { get; set; }
我想知道他们的JSON规范是否有误,或者我是否可以创建类来返回他们期望的JSON?在这个例子中,我相信房间类型“芬威客房”是一个变量 - 所以我认为它不能同时是一个类名。但也许我不知道如何创建这样的类。
我只是无法弄清楚“芬威客房” - 我认为它需要像这样的内容:“房间名称”:“芬威客房” - 但也许还有其他定义类的方法,使其不需要标签“房间名称”。
如果您能帮忙确认是否可以创建类来匹配他们的JSON,我将不胜感激。
谢谢,Mark
room_types
这样的属性并认为*它应该是一个数组,因为它在末尾有一个's'*。它将生成一个字面对象。编写一个合理的结构不应该花费太长时间。 - CodingIntrigue