Как мне получить текстовое представление того, что сериализует protobuf-net?

#c# #protobuf-net

#c# #protobuf-net

Вопрос:

Я пытаюсь получить текстовое представление того, как выглядит protobuf для целей отладки. То, что я ищу, это «.SerializeToText», который выдает мне строку с данными protobuf. Я бы также подумал, что «.DeSerializeToText», который принимает protobuf и просто записывает его, будет работать. Существует ли это или есть хороший способ его создания?

С уважением, TeeCee

Комментарии:

1. то, что он сериализует, — это данные для свойств, помеченных соответствующим атрибутом. не все из них всегда являются строковыми. если вы хотите просмотреть выходные данные, сохраните их в файл и просмотрите с помощью шестнадцатеричного редактора или аналогичного

2. Это то, чего я пытаюсь избежать, поскольку я хочу включить данные в подробное ведение журнала для команды тестирования для удобства.

Ответ №1:

Технически, в protobuf существует формат seconday, основанный на строках, однако он никогда не был реализован для protobuf-net, поскольку, откровенно говоря, он теряет все преимущества protobuf. Если вам нужно строковое представление, лучше всего использовать «json.net » или «jil» для записи объектной модели в формате json.

Комментарии:

1. Спасибо. Это была информация, которую я искал. Я понимаю вашу точку зрения и согласен, но разве это не было бы полезно для целей отладки / ведения журнала, если реализация того, что сериализовать и во что коррелировать между двумя выходами?

2. @TerCee это зависит от того, кто разрабатывает, внедряет, тестирует, развертывает и поддерживает это? 🙂

3. @Mark я знаю, что вы имеете в виду, и я думаю, что вы проделали отличную работу с proto-net 🙂