-1

我有以下内容:

class Data
{
  Foo foo;
  string s;
}

我需要将 Data 对象(我们称之为“d”)序列化为 JSON 字符串,我正在做类似的事情:

string jsonString = JsonConvert.SerializeObject(d); 

它工作得很好。

并且 Data 中的字符串字段“s”是另一个 JSON 字符串,而不是纯字符串。当数据被序列化时,JSON 字符串值“s”也被序列化,导致双重转换。

如何注释字符串字段,以便 JSON 序列化程序不会再次对其进行序列化?

4

2 回答 2

0

您可以使用“ NonSerialized ”属性标记您的字段“s”,这意味着您的字段“s”不会被序列化。

于 2013-09-03T05:10:04.530 回答
0

你的问题不清楚,所以我来猜测一下;您想将 Foo 类序列化为{d:{fooooo}}.

那么最好使用匿名类型

Foo foo = new Foo();
var json = JsonConvert.SerializeObject(new { d = foo });

不需要Data上课。

于 2013-09-02T22:30:08.557 回答