0
[DataContract(IsReference = true)]
public abstract class Entity
{
[DataMember]
protected Dictionary<MyStruct, MyObject> MyDict;
...
}
내가 직렬화 및 newtonsoft JSON을 사용하여 직렬화하려고 다음 클래스를 가지고, 직렬화 작동합니다. 그러나 deserializn에서 나는 다음과 같은 오류 메시지가 나타납니다. "문자열을 키 유형으로 변환하기 위해 TypeConverter를 만듭니다", 그리고 유형 변환기를 생성 할 때 deseializer가 호출하지 않습니다. 내가 JSON 시리얼이 아닌 객체로, 문자열로 키를 대하는 JSON 시리얼 라이저를
StringBuilder sb = new StringBuilder();
TextWriter text = new StringWriter(sb);
var serializer = new JsonSerializer();
serializer.TypeNameHandling = TypeNameHandling.Auto;
var inst = new Instance();
serializer.Serialize(text, inst);
TextReader textReader = new StringReader(sb.ToString());
JsonReader reader = new JsonTextReader(textReader);
var res = serializer.Deserialize(reader, typeof(Instance));
더 많은 코드를 표시해야합니다. –
위의 추가 방법은 serializer를 사용하는 방법입니다. –