我正在使用protobuf-net(版本2.0.0.621)並且有一個序列化List類型的問題,其中T是我自己的類(不管它包含什麼)和替代設置爲T.序列化列表<T>使用protobuf-net異常的代理
的代理設置是這樣的:
ProtoBuf.Meta.RuntimeTypeModel.Default.Add(typeof(MyClass), false).SetSurrogate(typeof(MyClassSurrogate));
MyClass的:
public class MyClass
{
public int Number { get; set; }
}
[ProtoContract]
MyClassSurrogate
{
[ProtoMember(1)]
public int Number { get; set; }
}
然後,我創建MyClass類型插件的泛型列表,孟清湘,與項目填補它和序列化這樣的:
ProtoBuf.Serializer.Serialize(stream, list);
在反序列化時出現問題,我不斷收到「空」,在代孕中所隱含的運營商轉換:
static public implicit operator MyClassSurrogate(MyClass myClass)
然後「MyClass的' 一片空白。
如果我刪除代理項並使用proto屬性來裝飾MyClass,那麼一切正常。
你能告訴我我做錯了什麼嗎?
謝謝。
忽略註釋如果無用,只是試圖幫助,但我從來沒有使用過協議緩衝區。無論如何,問題似乎很基本,這是否指向正確的方向? http://stackoverflow.com/questions/6498438/protobuf-net-cannot-serialize-type-data-how-can-i-define-type-data-with-protoc – bas 2013-02-10 09:32:25