У меня есть система, построенная вокруг protobuf.net, система предоставляет абстрактный класс (foo), который, как я ожидаю, будет реализовывать конечный пользователь.Абстрактный класс сериализуется по protobuf.net.В настоящее время, когда я пытаюсь сериализовать реализацию foo, я получаю сообщение об ошибке:
При сериализации обнаружен неожиданный тип;типы должны быть включены в ProtoIncludeAttribute;found bar передается как foo
Это имеет смысл, я не говорил системе о bar, поэтому, когда я пропускаю bar как foo, он запутывается.Есть ли удобный способ настроить все так, чтобы программисту было проще использовать мою библиотеку (желательно просто помечать поля как сериализуемые, как при обычном использовании protobuf.net?
Редактировать: Очевидно, я не могу использовать protoinclude, так как это требует изменения исходного кода базовой библиотеки.