我有几个对象如下:MVC 4的Web API - JSON序列化的自定义对象
public class Person
{
string FirstName;
string LastName;
public Person(string fn, string ln)
{
FirstName = fn;
LastName = ln;
}
}
public class Team
{
string TeamName;
Person TeamLeader;
List<Person> TeamMembers;
public Team(string name, Person lead, List<Person> members)
{
TeamName = name;
TeamLeader = lead;
TeamMembers = members;
}
}
public class Response
{
int ResponseCode;
string ResponseMessage;
object ResponsePayload;
public Response(int code, string message, object payload)
{
ResponseCode = code;
ResponseMessage = message;
ResponsePayload = payload;
}
}
(1) 这就是人控制器Get方法:
public class PersonController : ApiController
{
public Response Get()
{
Person tom = new Person("Tom", "Cruise");
Response response = new Response(1, "It works!", tom);
return response;
}
}
(2) 这是球队控制器Get方法:
public class TeamController : ApiController
{
public Response Get()
{
Person tom = new Person("Tom", "Cruise");
Person cindy = new Person("Cindy", "Cullen");
Person jason = new Person("Jason","Lien");
Team awesome = new Team("Awesome", jason, new List<Person>(){tom,cindy});
Response response = new Response(1, "It works!", awesome);
return response;
}
}
我要的是船尾呃用户呼叫 http://www.app123.com/api/person
我收到JSON结果是这样的:
{
"ResponseCode":1,
"ResponseMessage":"It works!",
"ResponsePayload":
{
"FirstName":"Tom",
"LastName":"Cruise"
}
}
,并呼吁 http://www.app123.com/api/team
我收到JSON结果是这样的:
{
"ResponseCode":1,
"ResponseMessage":"It works!",
"ResponsePayload":
{
"TeamLeader":
{
"FirstName":"Jason",
"LastName":"Lien"
}
"TeamMember":
[
{
"FirstName":"Tom",
"LastName":"Cruise"
},
{
"FirstName":"Cindy",
"LastName":"Cullen"
}
]
}
}
但他们从不为工作我,你知道如何用ASP.NET MVC 4产生像上面那样的JSON结果吗?
这就是我在回答中的含义,将JSON结果与JSON行为一起返回! – Sandy 2013-04-05 04:25:41