фон:Caliburn + Xamarin навигация
Мы используем Caliburn.Micro 3.0.0-beta2 с/Android проектом WPF + Xamarin IOS, и мы хотим, чтобы гарантировать, что вид модель может быть кросс-платформенной для повторного использования как можно больше кода.
Мы изучали, как отвлечь нашу навигацию от проверяемой, кросс-платформенной и так называемой модели просмотра, а не взглядов.
Мне было интересно, есть ли у кого-нибудь предложения о том, как мы должны обрабатывать навигацию к приложениям. Наши экраны требуют, чтобы мы вводили некоторые данные, такие как идентификаторы базы данных, в экраны, когда мы перемещаемся. В настоящее время мы сделали это с первого взгляда вида, введя данные в представление и передав его в модель представления, но это не кажется идеальным, поскольку оно действительно должно входить в модель представления, поскольку это логика представления (справа ?).
Модель вида создана для просмотра вида с использованием ViewModelLocator.LocateForView(this);
, и тогда это удовлетворяет остальным нашим зависимостям, используя SimpleContainer.
Мы понимаем, что навигация не была внедрена в 3.0.0, но согласно https://github.com/Caliburn-Micro/Caliburn.Micro/issues/142. Мы действительно ищем способ навигации, который может быть похож на решение Caliburn.Micro, которое будет реализовано в ближайшее время, с обнадеживающим взглядом, чтобы внести свой вклад в это, если это возможно.
Вопросы:
- Как бы мы идти о получении данных в модели представления, а не зрения, чтобы сделать его проще тестировать и больше похоже на то, как наш WPF приложения нужно будет работать?
- Является ли это даже разумным для мобильного приложения или мы должны придерживаться первого подхода? Если да, то каков был бы проверяемый подход для этого?
Спасибо, что предоставил ясность, которую мы ищем. Мы собираемся спуститься по пути репозитория, поскольку это, кажется, имеет смысл прямо сейчас. –