2013-05-13 2 views
1

Я пытаюсь использовать Cirrious.MvvmCross.Plugins.Network.Reachability на Windows Phone 8. Я добавил сетевой плагин к моему проекту WP8 и моему ядру. Загрузочный модуль плагина добавлен в папку Bootstrap. Я пытаюсь передать IMvxReachability в конструкторе одной из зависимостей моей модели просмотра. Когда я запускаю приложение, я получаю это исключение.MvvmCross Reachability на Windows Phone

Failed to load ViewModel for type MyNamespace.MyViewModel from locator MvxDefaultViewModelLocator 

ответ

1

Не все плагины и не все интерфейсы доступны на всех платформах.

Reachability был добавлен в iOS, потому что это было требованием от App Store.

Тот же интерфейс в настоящее время недоступен ни на каких других платформах.

Если вам нужно разжиться реализации интерфейса, который не всегда может быть в наличии, то способы сделать это в настоящее время используют:

if (Mvx.CanResolve<T>()) 
    myT = Mvx.Resolve<T>(); 

или (лучше):

Mvx.TryResolve<T>(out myT); 

В настоящее время существует открытая проблема (запрос функции), позволяющий предоставить дополнительные параметры для конструкции IoC - см. https://github.com/slodge/MvvmCross/issues/239

В настоящее время нет открытого запроса Uests for Reachability - существуют собственные API-интерфейсы (иногда с флагами защиты приложений), но большинство приложений Droid и Windows не тестируют состояние сети ...

Смежные вопросы