Convert list to json in .NET Core 6.0

Viewed 52

I am a beginner, I wrote a code to return data in a list, but I want data to be in json

[HttpGet]
[Route("getproject")]
public List<ProjectModel> GetProjects()
{
    return new List<ProjectModel>()
                {
                    new ProjectModel() { Id = 1, Project_Name = "abc", Description = "1st project", Type = "plot", SA_Universe_Code = "@ff" },
                    new ProjectModel() { Id = 2, Project_Name = "def", Description = "1st project", Type = "plot", SA_Universe_Code = "@ff" }
    
                };
}
1 Answers

You can use JsonResult like:

[HttpGet]
[Route("getproject")]
public JsonResult GetProjects()
{
    var data = new List<ProjectModel>()
                {
                    new ProjectModel() { Id = 1, Project_Name = "abc", Description = "1st project", Type = "plot", SA_Universe_Code = "@ff" },
                    new ProjectModel() { Id = 2, Project_Name = "def", Description = "1st project", Type = "plot", SA_Universe_Code = "@ff" }
    
                };

    return Json(data);
}

Or you can use json serializer in namespace:

using System.Text.Json
[HttpGet]
[Route("getproject")]
public IActionResult GetProjects()
{
    var data = new List<ProjectModel>()
                {
                    new ProjectModel() { Id = 1, Project_Name = "abc", Description = "1st project", Type = "plot", SA_Universe_Code = "@ff" },
                    new ProjectModel() { Id = 2, Project_Name = "def", Description = "1st project", Type = "plot", SA_Universe_Code = "@ff" }
    
                };

    var serializedData = JsonSerializer.Serialize(data);

    return Ok(serializedData);
}
Related