c# - 将自定义对象添加到 JObject 时出错

标签 c# .net json serialization json.net

这些是我的类(class):

public class RequestEntity
{
    public int Category { get; set; }
    public List<string> Types { get; set; }
    public List<Parameters> parameters { get; set; }
}

public class Parameters
{
    public string Name { get; set; }
    public string Type { get; set; }
    public bool IsRecent { get; set; }
}

将值设置为:

List<RequestEntity> request = new List<RequestEntity>();

现在我需要创建一个具有 2 个属性的 JObject

JObject requestObject = new JObject();
JProperty property1 = new JProperty("Details", request);
JProperty property2 = new JProperty("SpanInDays", 10);
requestObject.Add(property1);
requestObject.Add(property2);

JProperty property1 = new JProperty("Details", request); 给了我以下错误。

无法确定 DAL.Entity.RequestEntity 类型的 JSON 对象类型。

最佳答案

您必须使用某种JToken 作为JProperty 的值(至少在复杂类型的情况下)。您可以使用 FromObject 轻松获取其中之一:

JProperty property1 = new JProperty("Details", JToken.FromObject(request));

关于c# - 将自定义对象添加到 JObject 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26018906/

相关文章:

ios - Restkit-如何在表格 View 中显示 json 数据

c# - 对 Linq Lambda 表达式的 SQL 查询 - 使用组条件连接同一个表

c# - ASPNETBOILERPLATE - 应用程序服务方法不返回 .NET Core 中的相关实体

c# - 具有返回类型的线程

java - 运行 google place api 时出现 JsonParseException : The JsonDeserializer com. google.gson.DefaultTypeAdapters

java - 如何在 Spring 中仅返回特定字段

c# - 诊断第三方程序集、C# .NET 中的问题

c# - Autofac 中的异常 : No parameterless constructor defined for this object

c# - Lock 语句 - 它总是释放锁吗?

c# - Visual Basic 中的“Friend WithEvents”与 C# 中的 'private'