I want to return a number, a string, and a json from the data in output of an ASP.NET Core Web API.
I have this class:
public class Customer
{
public int id { get; set; }
public string name { get; set; }
public Customer(int _id, string _name)
{
id = _id;
name = _name;
}
}
And my API method is:
[Microsoft.AspNetCore.Mvc.HttpGet("myAPI")]
public IActionResult myAPI()
{
List<Customer> listName = new List<Customer>();
listName.Add(new Customer(1, "name1"));
listName.Add(new Customer(2, "name2"));
listName.Add(new Customer(3, "name3"));
int codeResult = 222;
string message = "mymessage";
return //how to return codeResult,message, Json(listName)
}
I expect the output to be as below
{
codeResult: 222,
message: "mymessage",
data: [
{ "id": 1, "name": "name1" }...
]
}
>Solution :
try this:
[Microsoft.AspNetCore.Mvc.HttpGet("myAPI")]
public IActionResult myAPI()
{
List<Customer> listName = new List<Customer>();
listName.Add(new Customer(1, "name1"));
listName.Add(new Customer(2, "name2"));
listName.Add(new Customer(3, "name3"));
int codeResult = 222;
string message = "mymessage";
return Ok(new { codeResult = codeResult, message = message, data = listName});
}
This is the result:
