Конвертер значений и результаты асинхронного веб-вызова - PullRequest
1 голос
/ 09 ноября 2011

У меня есть конвертер значений, и я хочу преобразовать ключ в объект и вернуть его. Я конвертирую объект, вызывая веб-службу ...

Отлично ... но проблема в том, что веб-сервис работает асинхронно. Как бы вы обычно это делали?

Ответы [ 2 ]

2 голосов
/ 09 ноября 2011

Это проблема дизайна. Следует помнить, что преобразователь значений - это просто «крошечный» преобразователь, в обязанности которого входит преобразование значения из одного формата в другой. Но получать данные через асинхронные вызовы - это бизнес-логика, которая должна быть расположена в ВМ (например, MVVM.)

2 голосов
/ 09 ноября 2011

Привязка к объекту в вашей ViewModel, в ViewModel сделайте асинхронный вызов и, когда завершенное событие вызывается, установите свойство, к которому вы привязываете, и обязательно вызовите событие onchange.

таким образомэлемент будет извлечен, и когда он пройдет через ваш конвертер, у вас уже будет значение.

...