Как отлаживать ошибки десериализации в .NET?

Ошибки Deserilization в .NET довольно общие, например примерно так:

System.ArgumentException: Объект тип System.Uri не может быть преобразован для ввода 'System.String'.

Понятно, что мы изменили тип свойства в объекте, но в этом сериализованном объекте есть примерно 10-15 различных классов, поэтому очень сложно понять, какой из них мы изменили или

Есть ли способ получить информацию о том, какое свойство в каком классе ( или хотя бы в каком классе ) действительно вызывает эту ошибку? Есть ли какой-нибудь внешний инструмент или известные способы сделать это?

PS Прежде чем кто-нибудь начнет говорить мне, почему я не должен использовать двоичный сериализатор или почему я должен использовать X, Y и т. Д. Для обратной совместимости, пожалуйста, сохраните совет по ним. Я знаю обо всем этом, но вопрос не в этом.

21
задан dr. evil 3 February 2011 в 13:36
поделиться