Typy niestandardowe w parametrach nawigacji w wersji 3

W wersji 3, jeśli chciałem przekazać dwa obiekty do innego modelu widoku:

public class Dog
{

}

public class Cat
{

}

var dog = new Dog();
var cat = new Cat();

ShowViewModel<SomeViewModel>(new {Dog = dog, Cat = cat });

public class SomeViewModel
{
  Init(Dog dog, Cat cat)
  {
  }
}

O ile wiem, to nie zadziała, ponieważ typy nie są rozpoznawane i nie można ich utknąć w słowniku. Gdybym chciał mieć te serializowane jako json, przekazane do modelu widoku i deserializowane jakoInit parametry, czy wdrożęIExtraParser? A jeśli to jest poprawne, jak mogę przejść do dodawania implementacji doExtraParsers słownik?

aktualizacja:

To wydaje się to robić:

var foo = Mvx.Resolve<IMvxFillableStringToTypeParser>();
foo.ExtraParsers.Add(new MyParser());

questionAnswers(1)

yourAnswerToTheQuestion