我遇到了Json.Net的问题。只能序列化某个类的某些特定属性?
我的应用程序连接到数据库并在其中存储一些数据。 让我们假设我的应用程序有三个不同的类别:实体,集团,组织
短期看到实体类:
public class Entity
{
[JsonIgnore]
public int ID { get; private set; }
[JsonProperty]
public string UID { get; private set; }
[JsonProperty]
public Gender EntityGender { get; set; }
[JsonProperty]
public string Surname { get; set; }
[JsonProperty]
public string Forename { get; set; }
[JsonProperty]
public Group EntityGroup { get; set; }
[JsonProperty]
public Organisation EntityOrganisation { get; set; }
组织和集团也有一个ID属性。
序列化实体时,我不想完全序列化EntityGroup和EntityOrganisation,但只有它们的ID。
一些简单的例子我怎么会喜欢它的样子:
(现在的样子)
{
"UID": "6c5204356b3a1a33",
"Surname": "Bar",
"Forename": "Foo",
"EntityGroup": {
"Name": "XGroup",
"GroupOrganisation": {
"Name": "FooOrg"
}
},
"EntityOrganisation": null,
"EntityStation": null
}
(应该怎么样子)
{
"UID": "6c5204356b3a1a33",
"Surname": "Bar",
"Forename": "Foo",
"EntityGroup": {
"ID": 1,
"GroupOrganisation": {
"ID": 1
}
},
"EntityOrganisation": null,
"EntityStation": null
}
是否有可能设置一个只在序列化实体时序列化组和组织的ID属性的JsonParser?
当您反序列化时,您希望组织和组发生什么事情? – tallseth
我不会直接反序列化它。我将解析它并从数据库加载相应的组织/组。 也许我会用另一种方式做,但这是我目前的想法:) – TorbenJ
或者,也许我可以使用nick_w的解决方案来简单地加载反序列化时的组织/组。 – TorbenJ