Qual é a melhor maneira de passar objetos para o viewmodel “navegado para” no MVVMCross?

Eu tenho um ViewModel que contém uma equipe que tem uma propriedade Players, que é uma lista de objetos Player. Dentro do TeamView, o Time é carregado profundamente, então os dados do jogador já estão na memória.

Qual é a melhor maneira de passar uma determinada instância da classe Player selecionada para um PlayerView?

O problema é que os construtores MVVMCross ViewModel só podem conter propriedades de cadeia na versão atual.

Eu tenho as seguintes ideias:

Passe o ID do Player selecionado e atribua a propriedade Team.Players como um ViewModel ao PlayerView. Esta pode ser uma solução razoável se o jogador selecionado for apenas o jogador focalizado no PlayerView e o PlayerView for realmente uma visão de "jogadores", onde o usuário pode passar entre os outros jogadores da equipe também.

Ter um ASP.Net MVC como o serviço ViewBag, que pode transportar dados apenas entre as ações de navegação, em um dicionário como armazenamento, e o parâmetro passado para PlayerView é um "viewbag: PlayerId123", que é uma chave especial que aponta para a instância da classe.

Serialize o objeto selecionado para string e passe-o como objeto serializado para o construtor. É possível, mas não gosto dessa solução.

questionAnswers(1)

yourAnswerToTheQuestion