Лично, я играл с несколькими из встроенных опций на XML-тяжелом проекте и обосновался на pulldom как лучший выбор для менее составных документов.
Специально для маленького простого материала, мне нравится событийно-ориентированная теория парсинга вместо того, чтобы настроить целое, убил обратных вызовов для относительно простой структуры. Вот хорошее быстрое обсуждение того, как использовать API.
, Что я люблю: можно обработать парсинг в for
цикл вместо того, чтобы использовать обратные вызовы. Вы также задерживаете полный парсинг (часть "получения по запросу") и только получаете дополнительную деталь, когда Вы звоните expandNode()
. Это удовлетворяет мое общее требование для "ответственной" эффективности, не жертвуя простотой использования и простотой.
Похоже, связыватель модели, стоящий за методом расширения, не может преобразовать тип данных FoodID в строку. Является ли ваш тип данных обычным GUID?
Я знаю, что у этого метода расширения есть перегрузки для работы с двоичным кодом, но я не уверен насчет GUID ....
Вы пробовали отлаживать его?
Я столкнулся с похожей проблемой: у меня один элемент модели - hiddeninput, я могу видеть правильное значение этого элемента при отображении представления (при отладке я показываю его, чтобы проверить правильность значения в представлении), но как только я публикую В представлении, возвращаемое значение этого элемента сохраняется в первый раз, когда оно было установлено, независимо от того, что я обновляю на дисплее и проверяю правильность значения, отображаемого в представлении, но возвращаемое значение просто сохраняет значение, установленное в первый раз. Это странно.