Преобразование объекта в строку JSON в С#
Возможный дубликат:
Включить объект С# в строку JSON в .NET 4
В Java у меня есть код для преобразования java-объекта в строку JSON. Как сделать подобное в С#? какую библиотеку JSON я должен использовать?
Спасибо.
Код JAVA
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class ReturnData {
int total;
List<ExceptionReport> exceptionReportList;
public String getJSon(){
JSONObject json = new JSONObject();
json.put("totalCount", total);
JSONArray jsonArray = new JSONArray();
for(ExceptionReport report : exceptionReportList){
JSONObject jsonTmp = new JSONObject();
jsonTmp.put("reportId", report.getReportId());
jsonTmp.put("message", report.getMessage());
jsonArray.add(jsonTmp);
}
json.put("reports", jsonArray);
return json.toString();
}
...
}
Ответы
Ответ 1
Я использовал Newtonsoft JSON.NET (Документация) Он позволяет создавать класс/объект, заполнить поля и сериализоваться как JSON.
public class ReturnData
{
public int totalCount { get; set; }
public List<ExceptionReport> reports { get; set; }
}
public class ExceptionReport
{
public int reportId { get; set; }
public string message { get; set; }
}
string json = JsonConvert.SerializeObject(myReturnData);
Ответ 2
Использовать .net встроенный класс JavaScriptSerializer
JavaScriptSerializer js = new JavaScriptSerializer();
string json = js.Serialize(obj);