简短的回答:不,你不能
你序列化一个对象,这就是,翻译它的结构为一个字符串,其描绘它的属性和价值。
但是,您可以确定想要获取序列化的结构,将对象从其原始结构迁移到您需要的结构,然后对其进行序列化。
在你的榜样,你有这似乎是这样一个对象:
class yourObject {
public string ID;
public Date fed;
}
但是你要序列的东西,给人的感觉更像是stablish字符串和日期之间的直接关系的字典。
也许你可以创建类似这样:
class yourOtherObject {
public Date fed;
}
而且在这样的方式加载原始对象:现在
yourObject originalData = new yourObject("dog-1", "2016/05/19T01:00:00Z");
yourOtherObject originalDataDate = new yourOtherObject();
originalDataDate.fed = originalData.fed;
KeyValuePair<string, yourOtherObject> serializableData = new KeyValuePair<string, yourOtherObject>(originalData.ID, originalDataDate);
,如果您序列serializableData,你应该获得你正在寻找的结果。只需将该想法封装到一个类中,创建特定的构造函数和方法即可将数据从yourObject传输到此类,并从此类传递给yourObject,您将能够获得翻译。
其他选项是添加一个方法,使特定的序列化到yourObject类,但这往往是长远来说更多的工作。
ID是一个属性,然后你试图让该属性的值成为一个类来包含该类中其余的属性?你为什么要这样做? – Dispersia
你为什么想这样做? – techspider
我不想对另一个将读取JSON的应用程序进行更改,该应用程序期望它处于后一种格式 –