我以前曾进行过这项工作,现在一直无法在AsP Core Web应用程序中将IList转换为JSON。我尝试了NewtonJson Lib,原生Json()和Ok()都行不通...现在。我现在看到返回的json始终始终为[{},{},{},{},{}]。
我已经在我的aspcore网络应用程序上尝试过这些。
result = Content(JsonConvert.SerializeObject(status), "application/json");
result = Json(status);
result = Ok(status);
为了简单起见,下面的示例控制台应用程序:
IList<Sate> c = new List<Sate>();
c.Add(new Sate("El1", "El1", "El1", "Result1"));
c.Add(new Sate("El2", "El2", "El2", "Result2"));
c.Add(new Sate("El3", "El3", "El3", "Result3"));
c.Add(new Sate("El4", "El4", "El4", "Result4"));
c.Add(new Sate("El5", "El5", "El5", "Result5"));
string converted = JsonConvert.SerializeObject(c);
Console.WriteLine(converted);
public class Sate
{
public Sate(string El, string E2, string E3, string E4)
{
e1 = El;
e2 = E2;
e3 = E3;
e4 = E4;
}
private string e1 { get; set; }
private string e2 { get; set; }
private string e3 { get; set; }
private string e4 { get; set; }
}
不知道我错过了一个小时了吗...
最佳答案
您的问题不是说什么是行不通的,但我会冒险猜测-您所有的类成员都标记为private
,因此默认情况下不会对它们进行序列化。如果要序列化它们,请将它们公开或用[JsonProperty]
标记。
关于c# - 从IList到JSON失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43773969/