を使用している間、私はクラスの下にあります。 -適切なデフォルトタイプエンコーディングが見つかりません。シリアル化がいるProtobuf
[Serializable]
[DataContract(Name = "StateValueWrapper")]
public class StateValueWrapper
{
[DataMember(Order = 1)]
public Type StateValueType { get; set; }
[DataMember(Order = 2)]
public object WrappedObj { get; set; }
}
私はエラーを取得protobuf.net.Whileのシリアライズを使用して上記のクラスのオブジェクトをシリアル化しようとしていますが、「いいえ、適切なデフォルト・タイプのエンコードが見つかりませんでした。」私はこのために何をする必要があるのか教えてください。以下はserilizationのための私のコードです: -
MemoryStream ms = new MemoryStream();
var srariazeObj = new StateValueWrapper();
srariazeObj.StateValueType = typeof(int);
srariazeObj.WrappedObj = 5;
ProtoBuf.Serializer.NonGeneric.Serialize(ms, srariazeObj);
はいMarc私はprotobufを使用してシリアライズするタイプの有限集合を持っています。あなたが最後の投稿で言ったアプローチを共有すると素晴らしいでしょう。 –
@vivek - 私は既存の[非常によく似た例を見つけました。ここ](http://stackoverflow.com/questions/2678249/in-protobuf-net-how-can-i-pass-an-array-of-type-object-with-objects-of-different/2679154#2679154 ) –