Возможный способ - объявить эти поля как private
или internal
.
Альтернативное решение - использовать класс DataContractJsonSerializer
.В этом случае вы добавляете атрибут DataContract
в ваш класс.Вы можете управлять элементами, которые хотите сериализовать, с помощью атрибута DataMember
- все отмеченные им элементы сериализуются, а остальные нет.
Вам следует переписать свой метод ToJson следующим образом:
public string ToJson()
{
DataContractJsonSerializer jsonSerializer =
new DataContractJsonSerializer(typeof(<your class name>));
MemoryStream ms = new MemoryStream();
jsonSerializer.WriteObject(ms, this);
string json = Encoding.Default.GetString(ms.ToArray());
ms.Dispose();
return json;
}