2012-05-04 2 views
1

У меня есть более 100 классов, которые наследуются от общей базы. Поэтому я добавляю их динамически во время выполнения, используя такой код:Как отлаживать отсутствующие типы protobuf-net?

RuntimeTypeModel.Default.Add(typeof(BaseClass<SubClass>),true) 
    .AddSubType(1,typeof(SubClass)); 

Теперь я получаю «отсутствует тип» исключение во время сериализации подкласса, но мне нужно знать, какой тип он пытается расшифровать.

Есть ли обработчик событий или что-то, что я могу использовать? Как определить тип проблемы?

+0

Можете ли вы дать точное сообщение об ошибке? Я думал, что в большинстве случаев это давало тип ...? –

+0

Вы правы. Я думал, что ошибка была похоронена в callstack, но на самом деле он сказал мне тот тип, который отсутствовал. –

+0

так ... Все хорошо? –

ответ

1

Простой: посмотрите на исключение; в большинстве случаев .Message расскажет вам, что именно расстроило его; если он не говорит много, посмотрите также на .InnerException и так далее. Если для какого-то определенного сценария он все равно не говорит вам ничего полезного: дайте мне знать; p