overrideLocalData
и overrideLocalContent
вообще не взаимодействуют с конвейером.Сиеста не будет пытаться разобрать то, что вы передаете;то, что вы переопределяете, - это то, что получает ваш ресурс.
Кроме того, overrideLocalData
и overrideLocalContent
не терпят неудачу.Они всегда обновляют содержимое ресурса.Если вы вызываете эти методы, содержимое ресурса будет соответствовать тому, что вы передали.
Итак ... проблема не в разборе.Что бы это могло быть?
Entity.typedContent
- это ярлык для применения as?
к сущности ресурса content
.Если вы получаете ноль, это означает, что либо (1) content
сущности, которую вы передали overrideLocalData
, было ноль, либо (2) контекстный тип, в котором вы вызываете typedContent
, не совпадаетфактический тип времени выполнения content
.
Что вы увидите, если напечатаете resource.latestData.content
?Это покажет вам, что там на самом деле, и исключит проблемы с преобразованием типов: typedContent
.
Если это не ноль, сравните его значение из сетевого запроса и получите типы для соответствия.
Если это ноль, то либо что-то еще очистило контент, либо вы в первую очередь передали ноль контента.Попробуйте SiestaLog.Category.enabled = .common
и посмотрите, сможете ли вы определить, где он находится, или не настроен на нужную вещь.