Bonjour,

Je m’interroge sur le bien fondé d'une technique.
Je souhaite transmettre un objet d'un ViewModel vers un autre et pour cela j'ai créé un objet nommé "ObjectHeader" (je ne trouve pas le nom représentatif mais faute de mieux...).

Débutant avec MVVM, je ne suis pas toujours sûr de ce que je fais.
Est-ce que cette façon de procéder vous semble adaptée ?
Voici quelques extraits de mon code.

J'attends avec impatience vos conseils et suggestions.
Merci

Voici la définition simplifiée de mon objet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
public class ObjectHeader : IEquatable<ObjectHeader>
{
    public string Header { get; set; }
    public object Content { get; set; }
    ...
    // ajout des différents constructeurs, de la méthode ToString() et
    // implémentation de IEquatable
}
Voici comment il est envoyé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Messenger.Default.Send(new GenericMessage<ObjectHeader>(new ObjectHeader("TransferConnectedUser", aUser)));
Voici comment il est reçu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
private void CollectConnectedUser(GenericMessage<ObjectHeader> genericMessage)
{
    if (genericMessage.Content.Header == "TransferConnectedUser")
        User = (PersonDTO)genericMessage.Content.Value;
}