protobuf-net でシリアライズしたい 2 つの単純なクラスがあります。すべて問題ないように見えますが、逆シリアル化すると Body プロパティが null になります。私が間違っていることは何ですか?
using System;
using System.Collections.Generic;
using System.IO;
using System.Runtime.Serialization;
using ProtoBuf;
namespace Protobuf_test
{
public class Program
{
private static void Main(string[] args)
{
var innerObject = new Inner() { Id = Guid.NewGuid() };
var outerObject = new Outer() { Body = innerObject };
using (var stream = File.Create("serialized.bin"))
{
Serializer.Serialize(stream, outerObject);
}
using (var file = File.OpenRead("serialized.bin"))
{
var deserialized = Serializer.Deserialize<Outer>(file);
}
}
}
[DataContract]
public class Inner
{
[DataMember]
public Guid Id { get; set; }
}
[DataContract]
public class Outer
{
[DataMember]
public object Body { get; set; }
}
}