В POF-сериализованных объектах .NET у меня есть класс A, содержащий класс B, а у класса B есть атрибут X, который я хочу извлечь и использовать в фильтре.
Я могу использовать SimplePofPath
для навигации по потоку POF от A к B и захвата X. Это работает хорошо, за исключением случаев, когда A.B == null
.
Когда у A нет экземпляра B, где ожидается, SimplePofPath
завершается неудачно с сообщением
Метод getChild () не может быть вызван для экземпляра SimplePofValue.
Вместо этого я хотел бы IPofNavigator
, который делает что-то более изящное, чем генерирует исключение, когдаон не может пройти путь, потому что я сериализировал null
в поле.Это может быть, скажем, возвращение предоставленного пользователем «запасного» значения.
Существует ли такая реализация?Если нет, то как мне начать самостоятельно расширять AbstractPofPath
?Я взглянул на этот пользовательский навигатор, работающий с содержащимися коллекциями, но не могу понять, как начать реализацию navigate()
.